该应用的目标是实现CSV文件的查询操作。
运行举例
java QueryCSV dns.csv 0 1
baidu.com
123.125.114.144
zjgsu.edu.cn
202.96.99.58
代码
代码中使用了普林斯顿大学的Java标准库,请戳这里下载:http://introcs.cs.princeton.edu/java/stdlib/
import java.util.HashMap;
import java.util.LinkedHashMap;
public class QueryCSV {
public static void main(String[] argv) {
In in = new In(argv[0]);
int keyField = Integer.parseInt(argv[1]);
int valueField = Integer.parseInt(argv[2]);
// 建立哈希表
HashST<String,String> map = new HashST<String, String>();
while(!in.isEmpty()) {
String line = in.readLine();
String[] s = line.split(",");
map.put(s[keyField], s[valueField]);
}
// 处理查询操作
while(!StdIn.isEmpty()) {
String key = StdIn.readString();
String value = map.get(key);
if(value == null) StdOut.println("Not Found");
else StdOut.println(value);
}
}
}
dns.csv文件内容
baidu.com,123.125.114.144
zjgsu.edu.cn,202.96.99.58
abc.com,199.181.132.250