Ich erhalte eine Datei mit dataInputStream.readFully, also Ich möchte den Fortschritt der Übertragung zeigen. Ist es möglich, den Fortschritt der ReadFully-Methode zu kennen? Danke.Fortschritt von dataOutputStream.readFully
Antwort
Nein - der springende Punkt ist, dass es ein einziger Aufruf ist, um es einfacher zu lesen.
Wenn Sie langsamer lesen möchten (z. B. um einen Fortschrittsbalken zu aktualisieren), können Sie einfach einen Block mit InputStream.read(byte[], int, int)
in einer Schleife lesen, bis Sie alle Daten gelesen haben. Zum Beispiel:
byte[] data = new byte[bytesToRead];
int offset = 0;
int bytesRead;
while ((bytesRead = stream.read(data, offset, data.length - offset)) > -1) {
offset += bytesRead;
// Update progress indicator
}
Dies ist ebenso wie die JDK 8 code for readFully
, aber mit Fortschrittsanzeige in der Schleife.
@Andreas: Ja, der Punkt Wenn Sie selbst schleifen, kann das OP eine Fortschrittsanzeige aktualisieren. –
@Andreas: Ich verstehe. Erledigt. –
Vielen Dank !, das ist so nützlich –
- 1. Tracking-Fortschritt von HTTPWebRequest
- 2. Fortschritt Update von AsyncTask Dialog
- 3. MobileInstallationInstall Fortschritt
- 4. PHP S3 Upload Fortschritt
- 5. Kuchen: Build-Skript Fortschritt
- 6. Shrink Database Fortschritt Status
- 7. CSS3 Animation "Fortschritt" Rückruf
- 8. SQL Server erhält Fortschritt
- 9. Fortschritt von Mercurial Push/Pull anzeigen
- 10. Bericht über den Upload-Fortschritt von node.js
- 11. Wie Tabellenschema von Fortschritt Datenbank über ODBC
- 12. Javascript bekommen Fortschritt von PHP-Skript
- 13. Rubin zeigt Fortschritt beim Kopieren von Dateien
- 14. XMLHttpRequest-Fortschritt von PHP-Skript erhalten
- 15. BackgroundWorker Bericht Fortschritt von externen Klasse?
- 16. Aktualisierung von Task.Run und UI-Fortschritt
- 17. C# - Fortschritt von WCF Rest Service
- 18. Download Fortschritt in HTML5
- 19. Charting-Fortschritt in JIRA
- 20. Fortschritt für DBCC SHRINKFILE
- 21. Fortschritt Dialog nicht nach (Fortschritt == 100) in webview
- 22. AVAssetExportSession stoppt den Fortschritt
- 23. Konsolenbasierter Fortschritt in Java
- 24. Flex Multipart Upload Fortschritt
- 25. android Download Fortschritt
- 26. Fortschritt verstecken JSON Felder
- 27. Zeige Fortschritt auf UI
- 28. Avaudiolayer Wiedergabe Fortschritt
- 29. AFHTTPRequestOperation Fortschritt ist ungleich
- 30. Datei-Upload-Fortschritt
Nr. Um den Fortschritt zu verfolgen, müssen Sie tun, was es tut. Schau dir die Quelle an: http://hg.openjdk.java.net/jdk8/jdk8/jdk/file/687fd7c7986d/src/share/classes/java/io/DataInputStream.java#l172 – Andreas