Announcement

Collapse
No announcement yet.

BinaryReader / BinaryWriter - ich verstehs nicht :(

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • BinaryReader / BinaryWriter - ich verstehs nicht :(

    Hi,

    ich habe ein kleines Tool geschrieben welches Dateien kopiert (vorrangig auf einen USB Stick).Hier bloß ein Codeschnipsel, welches den Kopiervorgang zeigt:

    <PRE>
    while((zahl=StreamRead.Read(buffer,0,1024))!=0)
    {
    System.Windows.Forms.Application.DoEvents();
    StreamWriter.Write(buffer, 0, zahl);
    }
    </PRE>

    Ist das Verzeichnis auf einer normalen Festplatte wird die Datei normal schnell kopiert, sobald das Zielverzeichnis jedoch auf dem USB Stick ist, dauert der Kopiervorgang ewig.

    Aber wieso? Es werden doch immer 1024bytes ausgelesen damit sollte doch auch ein USB Stick keine Probleme haben oder? Warum wird nix kopiert wenn ich den Wert 1024 erhöhe? Ich verstehe das irgendwie nicht .

    Vielleicht könnt Ihr mir helfen und schreiben was im Hintergrund da passiert und wieso das auf einen USB Stick kopieren solange dauert

    basto

  • #2
    Hi,also ich könnte mir das so Erklären.
    Der Chip auf dem Usb Chip ist nicht der schnellste,oder es liegt ein Treiberproblem vor.
    Aber um eine genaue Analyse zu machen müsste ich den kompletten Source sehen.
    Übrigens ist es in C# etwas umständlich auf externe Geräte zuzugreifen,anders als bei maschinennaher Programmierung,hab das leider auch schon feststellen müssen.
    Microsoft sollte da etwas nachbessern,denn noch ist zeit bis Whidbey.
    Aber bei so einer neuen Programmiersprache ist das glaub ich normal,denn Entwickler können sich ja z.B an Eric Gunnerson wenden,der ist nämlich der Languagedesigner von C#.
    Also dann good Luck!
    Gruß Dir

    Comment


    • #3
      Hi,
      das Problem liegt wahrscheinlich in deiner while-Schleife. Dort sollte != null und nicht != 0 stehen

      Comment

      Working...
      X