在JAVA中,如何根据大小切掉字符串?
如果大小超过1mb,我需要切掉一根线在JAVA中,如何根据大小切掉字符串?,java,string,Java,String,如果大小超过1mb,我需要切掉一根线 我如何用java实现它??基本上,任何大于1mb的内容都必须被切掉,我应该得到一个大小正好为1mb或小于1mb的字符串。请为您的字符串尝试以下代码: public static void main(String[] args) { // Get length of String in bytes String string = "long string"; long sizeInBytes = string.g
我如何用java实现它??基本上,任何大于1mb的内容都必须被切掉,我应该得到一个大小正好为1mb或小于1mb的字符串。请为您的字符串尝试以下代码:
public static void main(String[] args) {
// Get length of String in bytes
String string = "long string";
long sizeInBytes = string.getBytes().length;
int oneMb=1024*1024;
if (sizeInBytes>oneMb) {
String string1Mb=string.substring(0, oneMb);
}
}
考虑是否使用UTF-8编码,每个字符需要1个字节。您可以每1048576字节(1 MB)进行一次切分。我认为您问题的答案将取决于字符串的编码。一些钝汉字可能需要4个字节,而基本ASCII字符可能只需要1个字节。不是每个字符1字节。它是一种可变长度编码,每个字符使用1到4个字节。