Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 编码格式_C#_.net_Api_Model View Controller - Fatal编程技术网

C# 编码格式

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(

我想编码一个文件,我已经写了一些代码,但我认为它不能正常工作。 代码是这样的 实际上,我正在转换一个csv文件,在选择像ISO-8859-1这样的编码格式后,我通过下拉列表在数据库上选择编码格式 或Windows-1252下载数据文件。下载数据文件后,在记事本中打开并查看该文件,它将不会被选择编码格式

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
返回字符串,则为Unicode
File.WriteAllText
将其另存为UTF8,这是一个比拉丁语更好的选择。一个简单的
var text=convertToCSV();WriteAllText(文件名,文本)就可以了。如果要使用不同的编码,请将其作为参数传递给
writealText
,例如
File.writealText(text,encoding.GetEncoding(“ISO-8859-1”)
它不工作