C#のstring
のバイト数を知ることができますか?文字列のサイズをバイト単位で知る方法は?
答えて
あなたはSystem.Text.Encoding
クラスを使用して、バイト当たりの文字を取得するためにASCIIのようなエンコーディングを使用することができます。
またはMSDNから、この
System.Text.ASCIIEncoding.Unicode.GetByteCount(string);
System.Text.ASCIIEncoding.ASCII.GetByteCount(string);
愚かな質問ですが、文字列のデータが第三者のファイルから来た場合、UnicodeまたはASCIIクラスを使用するかどうかはどのようにわかりますか? –
@MatthewLock UTF16(またはmajidgeekの 'Length * sizeof(Char)'を使用してください。これは、 'Char'がUTF16/2バイトなので同じ結果を与えるはずです)文字列。内部文字配列のバイト数だけではなく、オブジェクト全体に必要な正確なメモリ量が実際に必要な場合は、[より一般的な方法]を検討することもできます(http://stackoverflow.com/questions/1128315/ find-size-of-object-instance-in-c-sharp-in-c-sharp)を使用します。 – Bob
System.Text.ASCIIEncoding.Unicode.GetByteCount(yourString);
それとも
System.Text.ASCIIEncoding.ASCII.GetByteCount(yourString);
を試してみてください。
String
オブジェクトは、文字列を表すSystem.Char
オブジェクトのシーケンシャルコレクションです。
だから、これを使用することができます:
var howManyBytes = yourString.Length * sizeof(Char);
まで私はデータ構造の基礎を理解することができる限り、それは最も崇高な選択肢です。 – LoneXcoder
と比較することができます長さのメンバーのサイズを考慮に入れることを忘れないでください。 int howManyBytes = yourString.Length * sizeof(Char)+ sizeof(int);これは、 –
文字列の長さがIntより大きい場合はどうなりますか? –
- 1. PHP。文字列をバイト単位で処理する。
- 2. ファイルを小文字でバイト単位で読み取る方法は?
- 3. Bash - サイズがバイト単位のファイルをリストする方法
- 4. 文字列中の文字をrでグループ単位で数える方法は?
- 5. サイズ(1024バイト)で文字列を分割
- 6. 文字列にバイト値(8ビット)を追加してJavaのバイト単位で読み込む方法
- 7. PythonのH2Oフレームのサイズをバイト単位で調べる方法は?
- 8. DelphiのUnicode文字列の長さ(バイト単位)
- 9. VBAで単純な文字列をバイト配列に変換する方法は?
- 10. (ICU4C)Unicode文字列を文字単位で別のUnicode文字列にコピーする方法は?
- 11. UTF-8文字列の長さをバイト単位で取得する最も良い方法は?
- 12. Qのテーブルのサイズ(バイト単位)
- 13. 異なるコンパイラのバイト単位の列挙サイズ
- 14. 長さではなくバイト単位の文字列長の有効性確認
- 15. 文字列表現バイトをバイトに変換する方法は?
- 16. Python - UTF-8でエンコードされた文字列をバイト単位で読み取る
- 17. PowerShellを使用して文字列のサイズをバイト単位で確認します。
- 18. 文字位置ではなく文字列内の文字列からバイト位置を見つける方法は?
- 19. Pythonでバイト文字列の最初の20バイトをカットする最も簡単な方法は何ですか?
- 20. ログファイルのサイズ(バイト単位)はどれくらいですか?
- 21. 圧縮された(上位バイトを削除した)バイトをUnicode文字列に変換する方法は?
- 22. バイト単位でビット単位でインクリメント(C#)
- 23. 文字列/リスト内の単語の位置を見つける方法は?
- 24. 文字列内の単語の位置を見つける方法は?
- 25. ディレクトリの私は(バイト単位)のサイズを計算したいC++
- 26. Pythonでサイズ単位(100kb、32MB)をバイト数に変換する
- 27. PHP:文字列内の位置に文字列を追加する最も簡単な方法は?
- 28. Ruby:文字列の温度単位を変換する方法は?
- 29. C++はEOLのサイズ(バイト単位)を取得します
- 30. WIN32で文字列の幅を見つける方法(ピクセル単位)
チェックアウト[この回答](http://stackoverflow.com/questions/472906/net-string-to-byte-array-c-sharp )。 – dasblinkenlight
'string'オブジェクトがどれくらいのメモリを占有しているか、またはファイルに書き込まれたときやネットワーク経由で送信されたとき(エンコードされたとき)、文字列の表現が占めるバイト数は全く異なる2つの質問です。 majidgeekはほとんど前者に答え、diyaは後者に答えました(少なくとも2つの一般的なエンコーディングについては)。 –
[どのくらいのバイトがかかりますか?](http://stackoverflow.com/questions/3967411/how-much-bytes-will-take) – nawfal