簡體   English   中英

不同語言的 String.length() 計數不同

[英]Different count for String.length() for different languages

我想要的是

給定一個字符串 s 和一個坐標 x1,想打印到 pdf 考慮 x1 在中心。 我需要開始 x 坐標

問題

我可以很容易地用 x1-s.length()/2 計算起始坐標(x)到它在中心的位置,但它對於印地語(語言)失敗了

如何計算忽略Unicode字符但忽略字母的實際字符數。 我基本上想在中心打印字符串,字符串是可變的

length方法可能會為您提供意想不到的答案有幾個原因。

String上的 length 方法返回String中 char 值的數量,但 Unicode 字符比可能的char值多,因此對於某些字符,使用多個 char 值來存儲字符。 要獲得您期望的長度,請嘗試以下操作: s.codePointCount(0, s.length())

如果您的字符串包含Combining Diacritical Mark ,它使用一個字符,但與另一個字符組合顯示。 這是一個關於如何發現這些問題的問題: 檢測 Java 中的任何組合字符

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM