2010-09-30 94 views
2

我正在調試一箇舊的OPENSTEP(黃箱)應用程序,用Objective-C編寫,運行在Windows 2000上,使用Project Builder構建。在Obj-C中,我能找到的將字符串寫入磁盤的唯一簡單方法是[NSString writeToFile],這是一種Cocoa/iOS時代的方法,它似乎還沒有寫入我正在編譯的OPENSTEP版本中(使用Project Builder,用於Windows 1.0的YellowBox,v365)。在OPENSTEP(YellowBox)中寫入一個字符串到磁盤

我基本上喜歡寫在異常處理的例外磁盤的詳細信息(使用NS_DURING..NS_HANDLER..NS_ENDHANDLER塊)。

編輯:

現在,我得到以下警告:'NSString' does not respond to 'writeToFile:'是否有可能有一些其他原因(缺少#import等)?

回答

1

我以爲-writeToFile:*是原始的OpenStep API。其實,是的,至少有一個是(http://docs.sun.com/app/docs/doc/802-2112/6i63mn65q?l=Ja & a = view#05.Class-243)。

在任何情況下,情況越糟糕,您可以使用getString方法填充malloc() ed緩衝區,然後將其寫入磁盤。

0

如果NSString不響應writeToFile:,那麼您的選擇是將該方法添加到類中(您自己的實現),或者將字符串取出並寫入文件(您自己的實現)。正如@bbum所示,它不在那裏。 (Hi @ bbum!)

+0

對不起,我已經遠遠超出了這個項目,不能再測試它了。我應該刪除這個問題,因爲我永遠無法驗證答案。 – Dov 2012-03-07 13:04:55

1

我正在查看包含在WebObjects 4.0(Project Builder v347.3)中的Windows的Yellow Box版本。正在討論的方法的簽名是-writeToFile:atomically:,其記錄爲on Apple's current developer site

我想如果你使用這種方法而不是隻是-writeToFile :,它會按預期工作。