Ein Fortschrittsbalken zu IO -Stream zeigt den Fortschritt der Hoch-oder Herunterladen von Dateien. Ein IO -Stream verarbeitet Eingangs-und Ausgangs -Funktionalität mithilfe von Streams . Ein Strom ist eine Abstraktion, die eine Vorrichtung, bei Eingang und Ausgang geführt darstellt. Streams sind auf eine physikalische Quelle wie Tastatur oder einem Eingang Konsole verbunden . C + + bietet die Standard iostream Bibliothek einschließlich der grundlegenden Klassen-Templates , Typen und Manipulatoren . Anleitung
1
Klicken Sie auf "Start ", "Alle Programme" und " Visual Studio ", um die Integrated Development Environment geben . Wählen Programmiersprache Visual C + +. Klicken Sie auf " Form1.cs ", um die Design-Ansicht zu wechseln. Klicken Sie auf " Werkzeuge " und "Button" , um einen neuen Button mit dem Namen erstellen
2
Doppelklicken Sie auf das button1 und geben Sie den folgenden Code , um Informationen über Input-Datei zu erhalten " Button1. ":
using System; mit System.IOSystem.IO.FileInfo fileInfo = new System.IO.FileInfo ( FileTextBox.Text );
3
aus Datei lesen " c: \\ \\ text1.txt " in die neue FileStream variable " Strom " mit dem folgenden Code :
mit ( System.IO.FileStream stream = neue System.IO.FileStream (" c: \\ \\ text1.txt " , System.IO.FileMode.Open , System.IO.FileAccess.Read ) )
die Verwendung des ProgressChanged Ereignis meldet den Fortschritt des Upload. Erhalten Sie die Upload- Fortschritt mit vairable
{using ( StreamWithProgress uploadStreamWithProgress = new StreamWithProgress (stream) ) { uploadStreamWithProgress.ProgressChanged + = uploadStreamWithProgress_ProgressChanged " uploadStreamWithProgress . ";
4
Doppel - klicken Sie auf Form1 . Holen Sie sich das Datei-Upload- Fortschritt über die folgenden Funktionen
Variable definieren bytesRead : . Private lange bytesRead ;
Lesen Sie die geladenen Bytes in die Variable " bytesRead " in Funktion zu StreamWithProgress
öffentlichen StreamWithProgress ( FileStream -Datei) { this.file = file , Länge = file.Length ; bytesRead = 0; if ( ProgressChanged = null ! ) ProgressChanged (this, neue ProgressChangedEventArgs ( bytesRead , Länge ) );}
berechnen und kehren den Fortschritt der Upload in der getProgress Funktion : public double getProgress () {return ( (double) bytesRead ) /file.Length ;}