用Nsdata作为字符串初始化Nsdata



我有一些NSData输出,我想转换成一个字符串。

NSString * test = [NSString stringWithFormat:@"myfile.txt];    
NSData *myData = [[NSData alloc] initWithContentsOfFile:(@"%@", test)];

这个NSData被保存到一个文件,它看起来像:21fa9731 27c67c00 da1c3349 d82470eb 56f97b88 559f406c 6abecbb7 de020007 47a4541d 99c9c5e7 883f8bf1 165fba39

你知道一种方法来获得这个字符串,因为它是在"myfile.txt" ?

谢谢!

如果数据文件在硬盘上的某个地方(不是在应用程序包中),你必须提供数据文件的完整路径。

NSString * test = [NSString stringWithFormat:@"myfile.txt];    
NSData *myData = [[NSData alloc] initWithContentsOfFile:(@"%@", test)];
NSString* myString = [NSString alloc]initWithData:myData
                    encoding: NSUTF8StringEncoding];

选择保存数据文件的编码。

我不知道你的问题是什么。你可以告诉我们这个文件是怎么写的,这样我们就能更接近一些。

然而,你做得太复杂了,因此容易出错。下面的代码将用于读取一个常量名为myfile.txt的文件。

NSData *myData = [[NSData alloc] initWithContentsOfFile:@"myfile.txt"];

坦率地说,我甚至不知道myfile.txt应该在哪个目录下。当然,有比在代码中直接使用常量量更好的方法来处理常量量。

顺便说一句,你在myData中实际接收到什么?空吗?

(这更像是一个评论而不是一个答案,但答案的格式要好得多。)

最新更新