android binary read/write fixed

This commit is contained in:
Vladimir Enchev
2016-01-29 15:27:55 +02:00
parent e6da4f3377
commit b9e8608fa4
2 changed files with 4 additions and 4 deletions

View File

@ -245,8 +245,9 @@ export var testFileReadWriteBinary = function () {
if (platform.device.os === platform.platformNames.ios) {
TKUnit.assertTrue(source.isEqualToData(destination));
} else {
TKUnit.assertEqual(source, destination);
TKUnit.assertEqual(new java.io.File(sourceFile.path).length(), new java.io.File(destinationFile.path).length());
}
destinationFile.removeSync();
// </hide>
// ```

View File

@ -201,7 +201,7 @@ export class FileSystemAccess {
try {
var javaFile = new java.io.File(path);
var stream = new java.io.FileInputStream(javaFile);
var bytes = new byte[javaFile.length()];
var bytes = java.lang.reflect.Array.newInstance(java.lang.Byte.class.getField("TYPE").get(null), javaFile.length());
var dataInputStream = new java.io.DataInputStream(stream);
dataInputStream.readFully(bytes);
return bytes;
@ -212,11 +212,10 @@ export class FileSystemAccess {
}
}
public write(path: string, content: java.io.ByteArrayOutputStream, onError?: (error: any) => any) {
public write(path: string, bytes: native.Array<number>, onError?: (error: any) => any) {
try {
var javaFile = new java.io.File(path);
var stream = new java.io.FileOutputStream(javaFile);
var bytes = content.toByteArray();
stream.write(bytes, 0, bytes.length);
stream.close();
} catch (exception) {