【Java】关于String超过65535字节的方法处理

当处理超过65535字节的大字符串时,Java中直接使用String会抛出异常。解决方法是改用StringBuilder进行动态扩容。StringBuilder能有效处理大字符串,避免了String对常量池的长度限制。如果处理的是MB或更大规模的数据,建议采用大数据处理技术进行拆分处理。
摘要由CSDN通过智能技术生成

一、假设

1、假设你工作了好多年,Java用的6的一批

2、假设偶然的机会,你遇到的大字符串的处理

3、假设你没有留意过String支持的最大长度

4、假设有一天,你无意中通过main方法处理某个字符串时,报了“Error:(21, 8) java: 对于常量池来说, 字符串 "{"000":[[0,0,"河西学院"]..." 的 UTF8 表示过长”异常

二、解决方案

1、通过StringBuilder进行处理

2、修改前

String str = "[1]假设超过了65535................[2]这里是大于的部分.....";

3、修改后

StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("[1]假设超过了65535................");
stringBuilder.append("[2]这里是大于的部分.....");
String str = stringBuilder.toString();

三、说明

1、Java中,String直接接收字符串,最大值为65535个字节,是字节。

2、StringBuilder支持动态扩容,所以稍微大点儿的,可以通过StringBuilder进行处理。

3、如果是MB单位或者GB甚至更大的单位,建议使用大数据处理思维,进行拆分处理。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值