Swift 3将字符串写入二进制文件

时间:2017-04-02 12:56:56

标签: swift

如何将字符串写入二进制文件? 我已经尝试了很多,但每次我的文件显示为纯文本文件..

我对plist文件不感兴趣..

            string = String(data: data, encoding: String.Encoding.utf8)!;
            var buffer = [UInt8](string.utf8);

            var f = fopen("newdata.dat", "w");
            let success = fwrite(buffer, MemoryLayout<UInt8>.size, buffer.count, f);
            fsync(fileno(f));
            fclose(f);
            print("success: \(success)");

1 个答案:

答案 0 :(得分:0)

您是否清楚数据和文本之间的区别?纯文本文件是由文本编辑器解释时显示为文本的数据。你期望看到零和一个数字或一组数字(也许是十六进制)?或者,如果您尝试将Word文档作为纯文本打开,您会看到那种混乱的字符?如果是这样,那么您需要在More Info

等应用中打开该文件

或者,DIY选项是查看字节缓冲区,但是在文本编辑器中查看字节的唯一方法是将它们转换为字符串并保存,这将代表原始文件的值但是具有讽刺意味的是文件本身(如果有意义的话)。