最新一期《中国IT产业发展报告》在2016中国(深圳)IT领袖峰会上正式发布,数字中国联合会常务理事李颖称。中国IT产业完毕了从要素驱动向效率驱动的过渡,眼下正在由效率驱动向创新驱动发展。


//定义要序列化的类型
protected int[] splits;//int 数组
protected String[][] splitss;// 二维数组
protected int n1; //int public void cFPoints1(Vector<Text2> sample, int n) {
String[]strs = sample.toString().split (",");
int numSplits = strs.length/3;
//对数组进行长度设定
this.splits = new int[numSplits];
this.splitss = new String[numSplits][3];
//赋值
this.n1 = n;
for (int i =0; i < sample.size();i++){
String string = sample.get(i).toString();
String[]strs1 = string.toString().split (",");
this.splits[i] = Integer.parseInt(strs1[0]);
this.splitss[i][0] = strs1[0];
this.splitss[i][1] = strs1[1];
this.splitss[i][2] = strs1[2];
} }  
<span style="font-family: Arial, Helvetica, sans-serif;">//注意序列化和反序列化的顺序要一致</span>
  @Override
public void write(DataOutput out) throws IOException {
//序列化int类型</span>
out.writeInt(n1);
//序列化int数组</span>
out.writeInt(splits.length);
ByteBuffer bbuffer = ByteBuffer.allocate(splits.length * 4);
for (int split : splits)
bbuffer.putInt(split);
out.write(bbuffer.array(), bbuffer.arrayOffset(), bbuffer.position());
//序列化string数组</span>
out.writeInt(splitss.length);
for (String[] is2 : splitss) {
for (String i : is2) {
Text.writeString(out, i);
}
} } @Override
public void readFields(DataInput in) throws IOException {
//反序列化int类型</span>
n1 = in.readInt();
//反序列化int数组</span>
splits = new int[in.readInt()];
byte[] buffer = new byte[splits.length * 4];
in.readFully(buffer);
ByteBuffer bbuffer = ByteBuffer.wrap(buffer);
for (int i = 0; i < splits.length; i++)
splits[i] = bbuffer.getInt();
//反序列化string数组</span>
splitss = new String[in.readInt()][3];
for (int i = 0; i < splitss.length; i++)
for (int k = 0; k < splitss[0].length; k++) {
splitss[i][k] = Text.readString(in);
}
}
}

Mapreduce实战:序列化与反序列化 int,int[],string[][]的更多相关文章

  1. JSON和XML格式与对象的序列化及反序列化的辅助类

    下面的代码主要是把对象序列化为JSON格式或XML格式等 using System; using System.Collections.Generic; using System.Globalizat ...

  2. List<string>序列化与反序列化一个小坑

    Newtonsoft序列化与反序列化有两个重载方法,带<T>和不带<T>的 如果将一个List<String>序列化为jsonStr后,再反序列化,会变成JArra ...

  3. XML序列化与反序列化接口对接实战,看这篇就够了

    关键字:c# .NET XML 序列化 反序列化 本文为接口对接实践经验分享,不对具体的XML概念定义进行阐述:涉及工具类及处理方法已在生产环境使用多年,可放心使用.当然如果你发现问题,或有不同想法, ...

  4. Golang之json序列化(struct,int,map,slice)

    老规矩,直接上代码 package main import ( "encoding/json" "fmt" ) //把结构体都改小写 type User str ...

  5. int and string

    int转string一.#include <sstream> int n = 0; std::stringstream ss; std::string str; ss<<n; ...

  6. JAVA中int、String的类型转换

    int -> String int i=12345;String s="";第一种方法:s=i+"";第二种方法:s=String.valueOf(i); ...

  7. C++ int与string的转化

    int本身也要用一串字符表示,前后没有双引号,告诉编译器把它当作一个数解释.缺省情况下,是当成10进制(dec)来解释,如果想用8进制,16进制,怎么办?加上前缀,告诉编译器按照不同进制去解释.8进制 ...

  8. [C#]List<int>转string[],string[]转为string

    // List<int>转string[] public string[] ListInt2StringArray(List<int> input) { return Arra ...

  9. C++ 中 int 转string, 以及10进制转2进制

    感谢:http://blog.csdn.net/xiaofei2010/article/details/7434737 以及:http://www.cnblogs.com/nzbbody/p/3504 ...

随机推荐

  1. 【CCF】商路

    [60分] #include<iostream> #include<cstdio> #include<cstring> #include<string> ...

  2. vim 翻页命令记录

    vim命令: ctrl-f:往前翻一页(forward) ctrl-b:往后翻一页(backward) ​ ctrl-d:往下翻半页(down) ctrl-u:往上翻半页(up) ​​​

  3. 标准C程序设计七---45

    Linux应用             编程深入            语言编程 标准C程序设计七---经典C11程序设计    以下内容为阅读:    <标准C程序设计>(第7版) 作者 ...

  4. .net压缩图片质量(附demo)

    private void CompressedImage(string fileName, long quality) { FileStream fs = new FileStream(fileNam ...

  5. LeetCode OJ--Minimum Path Sum **

    https://oj.leetcode.com/problems/minimum-path-sum/ 对一个grid从左上角到右下角的路径,求出路径中和最小的. 受之前思路的影响,就寻思递归,并且记录 ...

  6. es6 String.raw()

    模板字符串可以是原始的: ES6还为原生的String对象,提供了一个raw方法. 若使用String.raw 作为模板字符串的前缀,则模板字符串可以是原始(raw)的.反斜线也不再是特殊字符,\n  ...

  7. 公司内部技术分享之Vue.js和前端工程化

    今天主要的核心话题是Vue.js和前端工程化.我将结合我这两年多的工作学习经历来谈谈这个,主要侧重点是前端工程化,Vue.js侧重点相对前端工程化,比重不是特别大. Vue.js Vue.js和Rea ...

  8. Careercup | Chapter 3

    3.1 Describe how you could use a single array to implement three stacks. Flexible Divisions的方案,当某个栈满 ...

  9. boost::function和boost::bind 介绍

    一. boost::function介绍 原文:http://www.cnblogs.com/sld666666/archive/2010/12/16/1907591.html 本片文章主要介绍boo ...

  10. link2005 重复定义错误

    造成LNK2005错误主要有以下几种情况:  1.重复定义全局变量. 对于一些初学编程的程序员,有时候会以为需要使用全局变量的地方就可以使用定义申明一下.其实这是错误的,全局变量是针对整个工程的. 正 ...