每天都要处理好几个文本文件,文本文件很大,每个文本文件格式很统一,都是这样的:
id attr
id1 attr1
id2 attr2
id1 attr3
id2 attr4
id1 attr5
每个文本文件都有100万个这样的行,其中id列会有重复,attr列不会有重复
现在想要的是 把所有文本文件中的id和attr进行提取归纳,形成一个个这样的字符串
id attr1,attr3,attr5 就是把同id的不同attr都拼接成一个字符串用逗号隔开
前提是不能存进任何数据库里,不要用Hadoop
有什么效率高一些的技术可做这个!
java常量字符串过长怎么解决
Java常量字符串过长可以通过分段存储或使用字符串分割技术来解决。详细解释如下:1. 分段存储 当Java常量字符串过长时,可以考虑将其分成多个小段进行存储。例如,可以将一个长字符串拆分为多个短字符串,并将它们分别赋值给不同的常量变量。通过这种方式,可以有效地管理长字符串,同时避免在代码中出现过...
Java8中的Stream的汇总和分组操作~它并不难的
三、连接字符串 Joining,就是把流中每一个对象应用toString方法得到的所有字符串连接成一个字符串。如果这么看,它其实没啥用,但是Java也留下了后招,它的同伴(重载方法)提供了一个可以接受元素之间的分割符的方法。对于对象的打印:但其实我还有一些没有讲到的API使用方法,大家也可以额外去尝试尝试...
javasplit方法
Java中的split方法是String类的一个方法,用于将字符串按照指定的分隔符进行拆分,并返回一个包含拆分后子字符串的数组。详细解释:1. 功能概述:Java的split方法的主要功能是将一个较大的字符串按照特定的分隔符拆分成若干个子字符串。这对于处理包含特定分隔符的文本数据非常有用,例如在处理CSV文件或日...
Java代码处理数据技巧(java代码处理数据技巧有哪些)
2.优化数据库查询:对于数据量较大的机构树,我们需要将其存储在数据库中,可以使用索引、分区表等技术来优化查询效率,同时需要合理设置数据库缓存,减轻对数据库的查询压力。 3.采用缓存策略:机构树中的数据经常被多次查询,为了避免重复查询导致的拖慢系统性能,可以采用缓存技术,将热点数据缓存到内存中,以提高数据访问速...
java截取字符串中的数字,并且分组?
用正则表达式按数字和中文的交界处切分字符串,就可以实现你的要求,完整的Java程序如下 public class F{ public static void main(String[] args){ String str="鱼豆腐20海带3掌中宝8鸡翅2可乐2";String[] s=str.split("(?<=[0-9])(?=[\一-\龥])");for(int i=0;i...
《阿里巴巴Java开发手册》不建议在for循环中使用"+"进行字符串拼接
StringUtils.join则以特定分隔符将数组或集合元素合并为字符串。在讨论各种方法的内部实现后,对比了使用+、concat、StringBuffer、StringBuilder和StringUtils.join的效率。结果表明,StringBuilder方法在拼接操作中效率最高。原因是它避免了频繁创建新对象导致的性能开销和内存浪费。综上,遵循阿里巴巴Java开发手册的...
JAVA题:有一个字符串,要将其中的数据拆分到一个实体类中,求高手赐教
public static void main(String[] args) throws Exception { SAXReader reader = new SAXReader();File file = new File("books.xml"); \/\/你的字符串可以放这个文件里面 Document document = reader.read(file);Element root = document.getRootElement();List<Element> childElements = root....
java中String的字符串太大插不进数据库怎么办
好像是sql的长度不能超过4000字符,long类型现在已经不推荐使用,建议使用clob字段。把数据库中的char类型改为nvarchar2类型,然后就可以把String类型的数据直接存进去了。如果你用的是ORACLE数据库。--。根据字符串分割函数,先将这些数据转化为datatable类型,然后插入数据库。之前实现过,但是现在忘了,...
用java 截取字符串,每三个一组
以下是将一长串数字分组用逗号隔开,每三个一组,转化为字符串.例如:2345678--->2,345,678 23--->23 private static String convert(long space) { String str = String.valueOf(space); StringBuilder builder = new StringBuilder(str); str = builder.reverse().toString(); String...
在Java开发中,fastjson 这么快,老外为什么还是热衷 jackson
首先,fastjson和jackson是Java开发中常用的两个JSON库。fastjson,由阿里巴巴开发,以其高性能和稳定性受到推崇,能快速地将Java对象转换为JSON字符串。而jackson,由FasterXML出品,同样广受欢迎,它的亮点在于能将JSON字符串转化为Java对象,十分实用。以fastjson为例,它就像在高速公路上驾驶兰博基尼,转换...