【问题标题】:How to read a file in iPhone?如何在 iPhone 中读取文件?
【发布时间】:2011-05-22 17:45:44
【问题描述】:

我正在尝试以 NSString 的形式从我的文档目录中读取一个 .txt 文件。知道如何将文件读入 NSString 吗?

谢谢...

【问题讨论】:

    标签: iphone objective-c nsfilemanager


    【解决方案1】:

    使用 NSString 的 stringWithContentsOfFile: 方法。

    NSString *fileContents = [NSString stringWithContentsOfFile:@"some/file.txt"];
    

    【讨论】:

      【解决方案2】:

      希望这就是你所追求的:

      NSString *myString  = [[NSString alloc] initWithContentsOfFile:@"pathToFile"];
      

      我通常让它在 Applications Document 目录中查找。

      【讨论】:

        【解决方案3】:

        希望这会有所帮助...

        NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,  YES);
        NSString *documentsDirectory = [paths objectAtIndex:0];
        NSString *fileContents=[documentsDirectory stringByAppendingPathComponent:@"file.txt"];
        

        编码愉快...

        【讨论】:

          【解决方案4】:
          NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
              NSString *documentsDirectory = [paths objectAtIndex:0];
          
              NSString *myPathDocs =  [documentsDirectory stringByAppendingPathComponent:@"myfile.txt"];
          
              if (![[NSFileManager defaultManager] fileExistsAtPath:myPathDocs])
              {
                  NSString *myPathInfo = [[NSBundle mainBundle] pathForResource:@"myfile" ofType:@"txt"];
                  NSFileManager *fileManager = [NSFileManager defaultManager];
                  [fileManager copyItemAtPath:myPathInfo toPath:myPathDocs error:NULL];
              }       
          
              //Load from File
          NSString *myString = [[NSString alloc] initWithContentsOfFile:myPathDocs encoding:NSUTF8StringEncoding error:NULL];
          

          这对我有用

          不管怎样,谢谢大家..

          【讨论】:

            【解决方案5】:

            我认为这是从 DocumentDirectory 读取 .txt 文件的最佳方式。

             NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
                NSString *documentsDirectory = [paths objectAtIndex:0];
                NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@"txtFile.txt"];
                NSString *content = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:NULL];
            

            我希望这对你有用!!

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2012-09-24
              • 1970-01-01
              • 2011-09-12
              相关资源
              最近更新 更多