2013-10-26 132 views
-1

上的文件我已经在Xcode 5的代码写在对象C++和问题:问题访问iOS设备

NSLog(@"%@",pathToFile); 
    NSString *outputFileName = [NSTemporaryDirectory() stringByAppendingPathComponent:@"output.txt"]; 

    FILE* fileo = fopen([outputFileName UTF8String], "w"); 
    if (fileo) fclose(fileo); 
    fileo = fopen([outputFileName UTF8String], "a"); 
    if (!fileo) { perror("fopen"); NSLog(@" Wrong"); } else { NSLog(@"Nothing Wrong"); } 

    //Open the PDF source file: 
    // FILE* filei = fopen("c:\\pdf\\somepdf.pdf", "rb"); 
    FILE* filei = fopen([pathToFile UTF8String], "rb"); 
if (!filei) { perror("fopen"); NSLog(@" Wrong"); } else { NSLog(@"Nothing Wrong"); } 

    if (filei && fileo) 
    { 

的问题是,filei是每次N11和我down't知道为什么,! 我认为这个问题是pathtoFile: 是:pathToFile

__NSCFString * @"file:///private/var/mobile/Applications/3D02CBE0-6A8E-4709-B6EF-B6793E19F4F4/Documents/Inbox/Published_071032-8.pdf" 

0x145c53e0 

代码工作在模拟器伟大的,但不是在iPhone上! 有别人的想法什么是错?

工作目录可能,但也没有办法去改变它在Xcode 5

+0

标题说C,问题身体说“对象C++”(不管是什么),标签说C++。怎么办? – 2013-10-26 12:58:33

+1

(耶和全部大写用户名...) – 2013-10-26 12:59:17

+1

http://theoatmeal.com/pl/minor_differences/capslock – learnvst

回答

0

是看起来像你的文件的路径问题。我甚至确定价格,你看到像@"file://..."因为unix文件系统是直接基于路径,例如/var/mobile/.../

接下来我会建议你检查你在哪里定义pathToFile字符串。也许它已经超出了范围,因为它是在栈中,因为你同样的功能/方法中创建它创造。

这也许就是为什么它是NULL/nil

也许一个解决方案:创建基于NSBundle类的路径+不要使用file:// -paths。

让我知道它是否有效或需要任何其他帮助。 谢谢 关于

+0

THx中这是问题! –

+0

我想我也将writeToFile问题:原子:”已过时:在iOS中2.0第一个弃用 –