21

このコンソールアプリケーションは、.txtファイルをディスクに書き込みます。

ユーザーは、これらの.txtファイルをExcelにインポートして、正しくフォーマットされるようにしたいと考えているため、タブを使用する予定です。

私はこのナンセンスな「いくつかの文字列 /t 他の文字列 /t/t 他の文字列」を取得し続けます。Environment.NewLineのようなEnvironment.Tabはありません。

文字列に/tではなくタブを取得するにはどうすればよいですか?

方法があると確信しており、それはおそらく非常に明白であるため、応答時に一日中失神していると自称する必要があります。

(私は他の解決策も受け入れています。|または他の区切り文字/文字を使用する必要があるかもしれません。)

4

4 に答える 4

53

文字列のタブは通常\t、ではなく、で記述されます/t。文字列を正しくエスケープしていますか?

于 2013-01-06T17:25:23.303 に答える
4

最終的にインポートされるテキストファイルを作成することが目的である場合は、コンマ区切りの値を使用しないでください。詳細 http://en.wikipedia.org/wiki/Comma-separated_values

于 2013-01-06T17:26:54.437 に答える
3

技術的には、.NETにはタブ定数があります。これはMicrosoft.VisualBasic.dllにあります。

var tab = Microsoft.VisualBasic.Constants.vbTab;

ただし、vbTabを使用する理由はありません。同じ結果で\tを使用できます。

于 2013-01-06T17:33:38.793 に答える
3

この\t質問に本当にうんざりしているのなら、簡単なユーティリティクラスを書いてみませんか

public static class MyUtility
{
    public static string Tab
    {
        get{return "\t";}
    }
}

これで、コードでタブ区切りの文字列を作成できます。

string test = "MyFirstString" + MyUtility.Tab + "MySecondString" + MyUtility.Tab .......

しかし、繰り返しますが、なぜですか?、事前定義された標準のエスケープシーケンスを使用しない理由はありません

于 2013-01-06T17:34:21.460 に答える