Frage : Dateigröße gegen Schnur-Größe

Wie kann ich die Größe einer Akte mit der Größe einer Schnur vergleichen?

I morgens versuchend, festzustellen, ob eine Akte mit dem Inhalt einer Schnur überschrieben werden oder nicht auf der Akte size
basieren sollte

Antwort : Dateigröße gegen Schnur-Größe


Es abhängt davon, wie Sie die Daten zur Akte und zu Ihrer Anforderung schreiben.

Für die Standard-kodierungen ASCII und UT8 (die englisches und Ähnliches andere charsets bedecken), zusammenpassen Schnurlänge und Aktenbytelänge npassen, wie ein Buchstabe nur Byte in der Akte nimmt.

Für Unicode kodierungen (wie japanische Putzfrauen), als Sie sagte, dass Schnurlängen- und Aktenbytelänge nicht zusammenpaßt, da ein Buchstabe zwei Bytes nimmt.

Unter ist der Code für beide kodierungen, Sie kann wie pro Ihre Anforderung verwenden.
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
Für die Standardkodierungen (ASCII, UTF8):

	   Schnur textToWrite = „12345“;

            Schnurweg = @ " c:\temp\MyTest.txt ";
            FileInfo FI = neues FileInfo (Weg);

            wenn (! FI. Existiert || textToWrite.Length > FI. Länge)
            {
                Anwendung (StreamWriter Schalter = fi.CreateText ())
                {
                    Schalter. Schreiben (textToWrite);
                }
            }


Für Unicode kodierung:

	    Schnur textToWrite = „12345“;

            Byte [] bytesToWrite = System.Text.Encoding.Unicode.GetBytes (textToWrite);
           
            Schnurweg = @ " c:\temp\MyTest.bytes ";
            FileInfo FI = neues FileInfo (Weg);

            wenn (! FI. Existiert || bytesToWrite.Length > FI. Länge)
            {
                Anwendung (FileStream Schalter = FI. Verursachen ())
                {
                    Schalter. Schreiben (bytesToWrite, 0, bytesToWrite.Length);
                }
            }
Weitere Lösungen  
 
programming4us programming4us