Michael H
- Forum-Beiträge: 127
10.10.2012, 16:45:40 via Website
10.10.2012 16:45:40 via Website
Habe folgendes Problem:
Ich will über einen Socket Files senden. Dabei sollte eine Limite von 10MB/File definiert werden. Wenn ich jetzt aber ein File welches über 4 MB gross ist, byteweise über den Socket schieben will, bekomme ich eine out-of-memory exception. Nun wie würdet ihr mit dem ganzen umgehen? Ich meine z.B. WhattsApp kann ja auch grössere Files schieben...
Hier noch mein Codeschnipsel
Das ist die addByteArray-Methode:
[code]
public void addByteArray(byte[] buffer) {
for(int i=0;i<buffer.length;i++) {
attachment.add(buffer[i]);
}
}
[/code]
Ich will über einen Socket Files senden. Dabei sollte eine Limite von 10MB/File definiert werden. Wenn ich jetzt aber ein File welches über 4 MB gross ist, byteweise über den Socket schieben will, bekomme ich eine out-of-memory exception. Nun wie würdet ihr mit dem ganzen umgehen? Ich meine z.B. WhattsApp kann ja auch grössere Files schieben...
Hier noch mein Codeschnipsel
1File file = fileHandler.getFileFromInternalStorage(attachment.getNameAnhang()); // File von InternalStorage auslesen
2byte[] fileByteArray = fileHandler.getFileAsByteArray(file); // File in byte-Array wandeln
3this.addByteArray(fileByteArray); // File senden
2byte[] fileByteArray = fileHandler.getFileAsByteArray(file); // File in byte-Array wandeln
3this.addByteArray(fileByteArray); // File senden
Das ist die addByteArray-Methode:
[code]
public void addByteArray(byte[] buffer) {
for(int i=0;i<buffer.length;i++) {
attachment.add(buffer[i]);
}
}
[/code]
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.