C# Streamwriter正在用所有逗号分隔,我需要它停止

C# Streamwriter正在用所有逗号分隔,我需要它停止,c#,asp.net-mvc,streamreader,streamwriter,C#,Asp.net Mvc,Streamreader,Streamwriter,我有一个“翻译内容”应用程序。基本上,用户使用Summernote文本编辑器将内容HTML放入系统中。然后,他们可以通过下载csv文件(其中包含所有信息)请求翻译,并将其发送给翻译人员。当我们从翻译器中取回它时,我们将上载包含翻译的csv文件 问题1:有些列是基于内容的,其中有逗号。同样的内容也是HTML格式的。因此,您可能有: <p style: "color: blue;"> I am a test, and I like to cause problems </p>

我有一个“翻译内容”应用程序。基本上,用户使用Summernote文本编辑器将内容HTML放入系统中。然后,他们可以通过下载csv文件(其中包含所有信息)请求翻译,并将其发送给翻译人员。当我们从翻译器中取回它时,我们将上载包含翻译的csv文件

问题1:有些列是基于内容的,其中有逗号。同样的内容也是HTML格式的。因此,您可能有:

<p style: "color: blue;"> I am a test, and I like to cause problems </p>
我所尝试的:

所有人都说这应该行得通。事实上,它确实在内容周围添加了引号。但是,它仍然用逗号分隔。因此,我将得到两个列,例如

上校1:我是一个测试者 上校2:我喜欢制造麻烦

那里有引语,但它仍然是分散的。我还尝试:

string englishContent = content.Content.Replace(",", "&apos;");
这在导出时非常有效,SummerNote文本编辑器仍然可以理解和呈现。问题是,当我重新导入它时,分号正在造成巨大破坏,并将内容分成5-10列,而不仅仅是一整段内容

要导入的代码:

如何将内容保持为一个单独的块,而不将其拆分或划界


提前谢谢你

Panagiotis Kanavos的回答解决了我的问题。使用CSVhelper,我能够轻松地导出和导入CSV

不,它没有界定任何东西。StreamWriter写道,它没有界定任何内容。它没有列。它不会自己写任何东西,它完全按照你的要求去做。列是由var values=line.Split','生成的;在阅读代码中。该行不知道引用了某些字段。CSV并不像它们看起来那么简单。字段可以包含分隔符和换行符。这意味着fileReader.ReadLine;也可能是个问题。如果您打算处理逗号和换行符,您可能应该使用一个库,如使用不同的字段或行分隔符正确引用、导出和导入文件,那么“生成CSV的代码”中是什么告诉它用逗号分隔,还是Excel对其进行分隔?无论哪种方式,您会推荐什么解决方案?编辑:我看到了你的第二篇文章。忽略我询问您建议的解决方案。在“生成CSV的代码”中,告诉它不使用逗号分隔。错误存在于代码中,该代码读取文本时不检查引号字段。
string englishContent = string.Format(" \"{0} \" ", content.Content);
string englishContent = content.Content.Replace(",", "&apos;");
using (StreamReader fileReader = new StreamReader(path))
{
    List<string> listA = new List<string>();
    while (!fileReader.EndOfStream)
    {
        var line = fileReader.ReadLine();
        var values = line.Split(';');

         listA.Add(values[0]);
     }
  }