我有一个需求需要生成ASCII编码的文本文件。我的数据库中充满了带有Umlauts和Accents的希腊、法国和德国字符。这是否可能呢?
string reportString = report.makeReport();
Dictionary<string, string> replaceCharacters = new Dictionary<string, string>();
byte[] encodedReport = Encoding.ASCII.GetBytes(reportString);
Response.BufferOutput = false;
Response.ContentType = "text/plain";
Response.AddHeader("Content-Disposition", "attachment;filename=" + reportName + ".txt");
Response.OutputStream.Write(encodedReport, 0, encodedReport.Length);
Response.End();
当我收到报告字符串时,字符被真实地表示出来。但是当我保存文本文件时,特殊字符会被替换成问号。
据我所知,ASCII标准只适用于美式英语,而UTF 8则适用于国际观众。这个理解正确吗?
我想说的是,如果要求使用ASCII编码,那么我们就无法正确地表示重音和分音符号。
或者,我可能完全错了,说了些愚蠢的话?