जहाँ तक मैं समझता हूँ कि आप String
को सीमित करना चाहते हैं लंबाई इस तरह से है कि एन्कोडेड UTF-8
प्रतिनिधित्व 60 बाइट्स से अधिक नहीं है। आप इसे इस तरह से कर सकते हैं:
String s=…;
CharsetEncoder enc=StandardCharsets.UTF_8.newEncoder();
ByteBuffer bb=ByteBuffer.allocate(60);// note the limit
CharBuffer cb = CharBuffer.wrap(s);
CoderResult r = enc.encode(cb, bb, true);
if(r.isOverflow()) {
System.out.println(s+" is too long for "
+bb.capacity()+" "+enc.charset()+" bytes");
s=cb.flip().toString();
System.out.println("truncated to "+s);
}