xcode 4.2的奇怪行为

时间:2012-06-04 17:20:12

标签: xcode character simulator

奇怪而有趣的想法正在进行中

代码:

-(void)saveFile
{    
NSFileManager *fileMng = [NSFileManager defaultManager];
if(![fileMng fileExistsAtPath:self.appFilesPath])
{
    NSError *error = nil;
    BOOL success = [fileMng createDirectoryAtPath:self.appFilesPath withIntermediateDirectories:YES attributes:nil error:&error];
    if(!success)
    {
        NSLog([error localizedDescription]);
    }
}
NSLog([NSString stringWithFormat:@"%@",self.appFilesPath]);
[fileMng createFileAtPath:self.fileFullPath contents:self.fileData attributes:nil];
[self.fileData writeToFile:self.fileFullPath atomically:YES];
}

和这一行

NSLog([NSString stringWithFormat:@"%@",self.appFilesPath]);

应该给我这样的东西

file://localhost/Users/user/Library/Application%20Support/iPhone%20Simulator/5.0/Applications/BF35B859-514B-45AA-8E3A-B2CE65BD82B6/Documents/AppFiles

目录AppFiles应该在../Documents/目录下创建, 但它不存在......

并且nslog给了我这样的东西: 文件://本地主机/用户/用户/库/应用程序瑳楲杮楗桴潆浲瑡:敲敬獡Ë摡䕤瑮楲獥墙浯楄琐潩虑祲:扯敪琐潆䭲祥:汣獡小号獩楋摮晏汃獡㩳氀湥瑧ħ畡潴敲敬獡Ë敳佴椭捥㩴潦䭲祥:敲潭敶扏敪琐潆䭲祥:湩整敧哙污敌恋浔噬污敌爀浥癯䅥汬扏敪琐小号湩莹猀慨敲䥤狝慑据Ë敲楧瑳牥敎睴牯䑫晥畡瑬䙳牯灁䥰㩄挀灯ý摡佤椭捥㩴洀楡䉮湵汤Ë毕摮敬摉湥楴楦牥碗䕳留污洁瑓杮杮:桳牡摥潃普杩牵瑡潩潣湵牴晥畡畡潆潆..这个丛林的更多画面..帴㽻椽絩8策㴿楩}ㅶ䀶㨰帴㽻椽絩椸㈱䀀䜢佅楐数偬楯瑮 “㽻搽絤䀸㨰4㉶䀴㨰笴㴿摤㡽䀀倢剂焕敌瑳牥” ㅶ䀶㨰⌴匸㈱䀀㰢䕇协灵溃玱摥楔敬敓獴敓癫牥牐砚䑹汥来瑡㹥“㍶䀶㨰笴㴿摤㡽㉤椴㈳瘀㘱぀㐺㡀ㅩ2㉶䀸㨰帴㽻搽絤䤸㈱ㅤ椶㐲瘀㈱぀㐺癞8 ㅀ䀶㨰帴㡶ㅣ2策硟捰损汤敮琐潩彮㵳}ㅀ䀶㨰䀴常彻䍟剆湵潌灯紽㈱帀彻䍟剆湵潌灯紽䀸㨰4策彟䙃畒䱮浔㵰}癞䀸㨰4ㅀ䀲㨰帴㡶瘀〲぀㐺㡀ㅀ䤲㘱䀀㰢华慃档䑥汥来瑡㹥“㉀䀸㨰䀴笸㴿摤ㅽ2㽻搽絤㠲぀㐺㽻搽絤常㉤4㽻∽慬敤畴敤搢氢汤楧畴敤搢} upport / iPhone߈imulator / 5.0 / Applications / CAF90A92-5B85-4FC0-8482-3702C3E98F8D / Documents / AppFiles

当我第二次运行代码时,if条件被删除了,但是../Documents/目录是空的

来瑡㹥“㉀䀸 - 我的意思是wtf,第一次是这样的, 重新启动xcode,mac没有帮助, 模拟器全部设置为英文, 它也发生在其他项目中, 键盘设置蚂蚁国有化看起来不错, 所以我真的不知道出了什么问题

任何想法?

1 个答案:

答案 0 :(得分:1)

你不能只是NSLog一个字符串。它所采用的字符串参数是一种特殊插入的格式(如printf)。在你的情况下,它正在读取随机内存,因为%20S意味着将下一个参数解释为指向以空字符结尾的宽字符串的指针,并将其右对齐打印在20列中;他们是中国人,因为大多数Unicode都被中国象形文字所占据。

这是正确的方法:

NSLog(@"%@", self.appFilesPath);