Quantcast
Channel: Salesforce –ぱーくん plus idea
Viewing all articles
Browse latest Browse all 62

salesoforceおよびapexでの文字数・バイト数のカウントについて

$
0
0

salesoforceおよびapexで、どのように文字数・バイト数がカウントされるかについてまとめておこうと思います。

たとえば、オブジェクトの項目定義で「テキスト型で4文字」と定義されていた場合、半角、全角の混じった文字列はどこまで許容されるでしょうか。

Salesforceの中では文字列はUTF-8で扱われますので、全角は3byte、半角は1byteとなります。
バイト数を確認するコードは、「Blob.valueOf(string).size()」です。

また、全角・半角ともに、1文字は1文字として扱われます。
文字数は「string.length()」で確認できます。

つまり、下記のようなコードで確認すると、、、

String testStr = '1ああ1あ';
System.debug('length=' + testStr.length());
System.debug('byte size=' + Blob.valueOf(testStr).size());

length=5
byte size=11

のように出力されます。
項目定義で「テキスト型で4文字」と定義されていた場合、「1ああ1」までしか入力できないことになりますね。


Viewing all articles
Browse latest Browse all 62

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>