web-dev-qa-db-ja.com

csv列でコンマを使用する方法

可能性のある複製:
CSVファイルでのカンマの扱い

プロジェクトの1つについて、一括データをcsvファイルにエクスポートしています。したがって、この場合、a、b、c、dなどの値をすべて1つの列に残してエクスポートする必要があります。しかし、コンマはそれらを異なる列に分けます。

たとえば、\ r\nのような文字を含むtextareaまたはeditorに入力された値をエクスポートすると、csvの個別の行としてエクスポートされます。どうすればこの問題を解決できますか?

21
Mahesh KP

これを処理する最も一般的な方法は ""周り フィールドを使用することですが、誰がファイルを消費しているかによって、いくつかの方法で処理できます。コンマを区切ることができます。コンマを特別な値に変更するか、別の区切り文字を使用できますが、ほとんどのコマンドは

6
rerun
       // CSV rules: http://en.wikipedia.org/wiki/Comma-separated_values#Basic_rules
        // From the rules:
        // 1. if the data has quote, escape the quote in the data
        // 2. if the data contains the delimiter (in our case ','), double-quote it
        // 3. if the data contains the new-line, double-quote it.

        if (data.Contains("\""))
        {
            data = data.Replace("\"", "\"\"");
        }

        if (data.Contains(","))
        {
            data = String.Format("\"{0}\"", data);
        }

        if (data.Contains(System.Environment.NewLine))
        {
            data = String.Format("\"{0}\"", data);
        }

データは、dbの個々のアイテムまたはタイプのプロパティ値です。

61
Vijay Sirigiri