C# 编码格式
我想编码一个文件,我已经写了一些代码,但我认为它不能正常工作。 代码是这样的 实际上,我正在转换一个csv文件,在选择像ISO-8859-1这样的编码格式后,我通过下拉列表在数据库上选择编码格式 或Windows-1252下载数据文件。下载数据文件后,在记事本中打开并查看该文件,它将不会被选择编码格式C# 编码格式,c#,.net,api,model-view-controller,C#,.net,Api,Model View Controller,我想编码一个文件,我已经写了一些代码,但我认为它不能正常工作。 代码是这样的 实际上,我正在转换一个csv文件,在选择像ISO-8859-1这样的编码格式后,我通过下拉列表在数据库上选择编码格式 或Windows-1252下载数据文件。下载数据文件后,在记事本中打开并查看该文件,它将不会被选择编码格式 case "ISO-8859-1": File.WriteAllBytes(fileName, ASCIIEncoding.Convert(
case "ISO-8859-1":
File.WriteAllBytes(fileName, ASCIIEncoding.Convert(
ASCIIEncoding.ASCII,
Encoding.GetEncoding("ISO-8859-1"),
convertToCSV(queryExecutionResult, fileName)));
break;
case "Windows-1252":
File.WriteAllBytes(fileName, ASCIIEncoding.Convert(
ASCIIEncoding.ASCII,
Encoding.GetEncoding(1252),
convertToCSV(queryExecutionResult, fileName)));
break;
你说“工作不正常”是什么意思?那代码可能会把文本弄乱<代码>编码。ASCII是仅包含英文字符的7位US-ASCII代码页<代码>ISO-8859-1“是大多数人谈论ASCII时所指的拉丁语1代码页。如果读取此文件的代码使用不同的代码页,这两种方法都不会有帮助。您想做什么?C#字符串是Unicode,没有if或but。如果
convertToCSV
返回字符串,则为UnicodeFile.WriteAllText
将其另存为UTF8,这是一个比拉丁语更好的选择。一个简单的var text=convertToCSV();WriteAllText(文件名,文本)代码>就可以了。如果要使用不同的编码,请将其作为参数传递给writealText
,例如File.writealText(text,encoding.GetEncoding(“ISO-8859-1”)
它不工作