【问题标题】:streamreader not reading from textfilewithin the project流阅读器没有从项目中的文本文件中读取
【发布时间】:2009-11-09 21:42:46
【问题描述】:

我正在使用流读取器从项目中的文件中读取..

StreamReader stRead = new StreamReader("textfile.txt");

        while (!stRead.EndOfStream)
        {
            CheckBoxList1.Items.Add(stRead.ReadLine());
        }

但我得到一个错误:

找不到文件'c:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\textfile.txt'。

而文本文件位于项目的我的 bin 文件夹中。

C:\Users\xyz\Documents\Visual Studio 2008\Projects\WebApplication3\WebApplication3\bin\testfile.txt

如果我使用此路径,它可以工作,但我不想使用完整路径...

有没有办法做到这一点???

谢谢

如何将路径作为参考存储在 web.config 文件中????

【问题讨论】:

标签: c# asp.net visual-studio-2008 path streamreader


【解决方案1】:

也许你必须使用

StreamReader stRead = new StreamReader(Server.MapPath("~/textfile.txt"));

解析文件的物理位置,假设它位于项目的根目录中。

【讨论】:

    【解决方案2】:

    我会尝试项目根目录, 否则,请在 web.config 等配置文件中定义路径前缀, 这样,如果您担心路径更改,它就不会被硬编码

    【讨论】:

    • 根据您要部署应用程序的环境类型,执行上述 Tanathos 之类的操作可能更容易,否则您可以在 web.config(xml 文件) 在 appSettings 添加一个键,如 然后在代码中引用它,如 string fullpath = ConfigurationManager.AppSettings["Your Path"] + "\filename.txt ";如果您在 yoru web.config 中映射不同的路径,或者您必须在不同的部署环境中处理某些权限设置,使用这种样式会很方便
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-02
    • 1970-01-01
    相关资源
    最近更新 更多