我需要将猪格式的地图字符串表示(例如“['k1'#'v1','k2'#'v2']”)转换为地图对象。我更喜欢使用 pig 实现而不是自己实现它。我找到了一种相反的转换方法:DataType.mapToString(Map m)
问问题
81 次
1 回答
0
如果你真的坚持Pig,你可能会想出以下几点:
...
import org.apache.pig.builtin.Utf8StorageConverter;
...
public class Test {
public static void main(String[] args) throws IOException {
String mapStr = "[k1#v1,k2#v2]";
Utf8StorageConverter converter = new Utf8StorageConverter();
Map<String, Object> map = converter.bytesToMap(mapStr.getBytes());
for (Map.Entry<String, Object> entry : map.entrySet()) {
System.out.println(entry.getKey() + " :: " + entry.getValue());
}
}
}
我假设你有 Pig v0.10.0
于 2013-03-07T15:25:30.170 回答