我正在尝试使用Titanium 1.8.1读取.PNG文件 这是我读取文件的代码。
var f = Ti.Filesystem.getFile(Ti.Filesystem.resourcesDirectory, 'KS_nav_views.png');
var blob = f.read();
当我使用上面的blob对象创建新文件时,这样创建的新文件与原始文件不同。 这是我创建新文件的代码。
var outputDir = Titanium.Filesystem.getFile(Titanium.Filesystem.externalStorageDirectory,'output');
outputDir.createDirectory();
var newFile = Titanium.Filesystem.getFile(outputDir.nativePath,'outFile.png');
var test = newFile.write(blob);
if ( test === false){
Ti.API.debug("Write Error");
}
Ti.API.debug("Write complete? " + test);
创建了outFile.png,但问题是它不是有效的图像文件。此外,文件的大小约为53字节,而我的输入文件是1kb。
如果我们使用简单的文本文件作为输入并尝试创建重复的输出文件,则相同的代码可以正常工作。
答案 0 :(得分:1)
你不需要做read()这样做:
var t = Titanium.Filesystem.getFile(tempDataDirectory, 'a.json');
var o = Titanium.Filesystem.getFile(onlineDataDirectory, 'b.json');
o.write(t);
答案 1 :(得分:0)
完成书写后,您需要关闭文件。
test.close();