namespace test2
{
    class Program
    {
        // 2.文本文件中存储了多个文章标题、作者,标题和作者之间用若干空格(数量不定)隔开,每行一个,标题有的长有的短,输出到控制台的时候最多标题长度10,
        //如果超过10,则截取长度8的子串并且最后添加“...”,加一个竖线后输出作者的名字。
        static void Main(string[] args)
        {
            string[] readText = File.ReadAllLines("1.txt", Encoding.Default);
            foreach (string line in readText)
            {
                string[] str = line.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
                string str1;
                if (str[0].Length > 10)
                {
                    str1 = str[0].Substring(0, 8) + "...";
                }
                else
                {
                    str1 = str[0] + "|";
                }
                string title = str[0];
                string author = str[1];
                Console.WriteLine("标题:{0},作者:{1}", title, author);
            }
            Console.ReadKey();
        }
    }
}
为什么总是提示找不到1.txt(1.txt在Debug文件下)

解决方案 »

  1.   

    路径不对呗,你1.txt发在哪里的??
      

  2.   

    这样子,用string[] readText = File.ReadAllLines(Application.SetupPath+"\\1.txt", Encoding.Default);弄成绝对路径就可以了吧?这样还不对就是你东西放错位置了。
      

  3.   

    错误 1 “System.Net.Mime.MediaTypeNames.Application”并不包含“SetupPath”的定义
      

  4.   

    string[] readText = File.ReadAllLines(Application.StartupPath+"\\1.txt", Encoding.Default);
      

  5.   

    看看你的1.txt的位置,要完整路径
      

  6.   

    string[] readText = File.ReadAllLines(@"./1.txt", Encoding.Default);
      

  7.   

    你这个叫做“总是提示找不到1.txt”吗?找到引用这个东西的地方,删除引用。
      

  8.   

    嗯,基本上这是你引用了第三方的东西(而不是System.Net.Mime.MediaTypeNames.Applicatio本身),而这个第三方的东西使用了它。在.net开发中慎用(而不是不用)第三方的东西,如果用那么尽量拥有源代码。不要学java那种乱拼开源代码的做法。
      

  9.   

    汗!我也犯了这个低级错误,折腾了半天,一边想.Net自带的怎么会错呢..一边排错,还好看到你这个提示,3Q!