如何在解决方案资源管理器中创建文本文件

本文关键字:创建 文本 文件 资源管理器 解决方案 | 更新日期: 2023-09-27 18:29:55

这有点难以解释,但我会尽力的。我不是在问如何创建文本文件或读取文本文件并显示。它比那更基本。

我的问题是:我已经写了一段文本文件,但我不知道如何将其放在解决方案资源管理器下,所以我的程序可以引用它,而不是多次编写它。

这是我用一个示例字符串编写的一个代码,我有几个代码使用相同的文本但不同的任务。在这里,我手动(?)写下了我想保存为文本文件的文本(字符串),这样我就可以参考.

string st = "I like apples. I like red apples. I like red apples than green apples";
            string result = st.OrderByDescending(s => s.Split(' ').Count()).First();
            this.lblMostWordsInSen.Text = result;

实际上,上面的代码在Split下有一个错误,它说char不包含Split的定义。我该如何修复它?

我发现"text_file_name.txt"或(@"d:''test.txt")下面的代码是我想要的,但文件不应该存储在我的d驱动器中。它应该存储在我的程序中(解决方案资源管理器?)我在Web应用程序中做过,但我不知道如何在WinForm中做。

string filename = "Alice-in-Wonderland.txt";
StreamReader sr = new StreamReader("TestFile.txt")
String[] values = File.ReadAllText(@"d:'test.csv").Split(',');

最后,如何调用我的文件是我的最后一个问题。。。

提前感谢~

如何在解决方案资源管理器中创建文本文件

事实上,上面的代码在Split下有一个错误,它说char不包含"拆分"的定义。我该如何修复它?

string result = st.OrderByDescending(s => s.Split(' ').Count()).First();

这是因为字符串CCD_ 1是一组字符。事实上它是

st[0],st[1],...,st[st.Length-1]

当您调用st.OrderByDescending并提供类似s => ...的lambda表达式时,s并不表示整个字符串(st),它只表示类型为charst元素,这导致了我们上面提到的错误。


您可以将文本文件添加到项目中。如果你想阅读它们,你可以像这个一样阅读

File.ReadAllText("yourfilename")

但请记住在解决方案资源管理器中选择您的文件,右键单击并单击属性,然后根据您的情况将"复制到输出目录"属性更改为"Copy always(始终复制)"或"如果更新则复制

您还可以转到项目属性的"生成事件"选项卡,设置在尝试生成项目时将执行的操作,例如,您可以设置将"您的文件"复制到生成目录中名为"文本资源"的文件夹的操作,通过这种方法,您可以处理更复杂的情况,例如,当您的项目中有大量此类资源时。

您可以阅读本文以获取有关构建事件的更多信息

如果您想轻松操作这些设置,也可以使用Settings文件,而不是像注释中建议的那样使用程序的Resources
查看这篇文章:http://msdn.microsoft.com/en-us/library/aa730869(v=vs.80).aspx