FileName中的字符无效

时间:2014-04-10 21:30:40

标签: c# file-io

我没有看到关于这个的错误(这是我的代码中的类似字符串的示例),运行时抱怨说当我尝试执行文件时我的文件路径中有无效字符.ReadAllText在该文件上。

var somePath = @"C:\www\SomeDirectory1\SomeDirectory1 1.2\SomeDirectory1.Applications\InventoryGetRequest.txt";

更多信息

所以我认为错误实际上就在这里:

它试图将以下字符串附加到文件中:

        private const string textToStore= @"{
                                        ""ErrorMessage"": """",
                                        ""ErrorDetails"": {
                                                        ""ErrorID"": 111,
                                                        ""Description"": {
                                                                            ""Short"": 0,
                                                                            ""Verbose"": 20
                                                                        },

                                   ""ErrorDate"": """"
                                        }
                                }";

.....
            using (var fs = new FileStream(txtFilePath, FileMode.Truncate))
            {
                File.AppendText(textToStore);
            }

如果我只是改变textToStore =" test"它没有爆炸,所以它是我的json字符串吗?

2 个答案:

答案 0 :(得分:4)

您错误地使用了File.AppendText,它会返回一个StreamWriter,您预计会提供一些内容:

using (var streamWriter = File.AppendText("hello.txt"))
{
    streamWriter.WriteLine("example");
}

或者正如@ Selman22建议的那样,如果您更喜欢单行使用File.AppendAllText

File.AppendAllText("hello.txt", "example");

答案 1 :(得分:-2)

我可能错了,但我认为javascript对目录使用正斜杠,而不是反斜杠。我相信反斜杠仅用于转义序列。尝试更换它们并回发,让我们知道这是否有效。祝你好运!

编辑:我一开始并没有意识到这是C#。尝试用双反斜杠替换单个反斜杠。