21

此控制台应用程序会将 .txt 文件写入光盘。

用户希望将这些 .txt 文件导入 Excel 以使其格式正确,因此我计划使用制表符。

我一直在胡说八道“ Some string /t some other string /t/t some other string ”。没有 Environment.Tab 就像有 Environment.NewLine。

如何获得制表符而不是 /t 进入我的字符串?

我敢肯定有办法,而且它可能很明显,以至于我不得不整天称自己昏倒了。

(我也对其他解决方案持开放态度。我可能不得不使用 | 或其他一些分隔符/字符。)

4

4 回答 4

53

字符串中的制表符通常是写入\t的,而不是/t. 你是否正确地转义了你的字符串?

于 2013-01-06T17:25:23.303 回答
4

如果目的是创建最终将导入 int excel 的文本文件,为什么不使用逗号分隔值。更多信息 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 回答