在软件构造Lab1中初次接触Java、JUnit、Git、Travis等语言与工具,收获颇多,当然也遇到了很多坑,下面是Lab1中经验教训的一个总结。
文章目录
java读写文件
1.从文件中读入数据
以按行读入数据到List中为例:
try {
File file = new File(fileName);
InputStreamReader input = new InputStreamReader(new FileInputStream(file));
BufferedReader buffer = new BufferedReader(input);
String str;
while((str = buffer.readLine()) != null) {
arrayList.add(str);
}
buffer.close();
input.close();
}catch(IOException e) {
System.out.println("读入失败!");
return false;
}
2.向文件中写入数据
以向txt文件中写入数据为例,涉及到输出重定向:
try {
File f=new File("data.txt");//写入文件
f.createNewFile();
FileOutputStream output = new FileOutputStream(f);
PrintStream print = new PrintStream(output);
PrintStream consoleStream = System.out;
System.setOut(print);
System.out.print("写入数据...");
System.out.println();
System.setOut(consoleStream);
}catch(Exception e){
System.out.println("写入失败");
return false;
}
注意,输出重定向写入文件结束之后,需要再重定向至控制台,否则会出现控制台无输出的情况。
eclipse添加JUnit测试代码
可以直接在源代码目录下添加其相应的测试代码,但为了将测试代码与源代码分离,还可新建一个文件夹,将测试代码添加至其下。
具体步骤如下:
- 新建Source Folder文件夹
- 右击刚建好的文件夹,新建Other
- 在弹出的窗口中选择JUnit Test Case,单击Next
- 选择要放置的package(若有),取个名字Finish即可
利用eclipse将程序打包为jar文件
- File -> Export
- 选择JAR file
- 选择要打包的package,并在下面选择要存放的路径,单击Finish
- 此时的jar包还无法运行,会提示找不到主清单文件,这时需要找到我们的jar包,用360压缩(不是打广告,但u1s1,360压缩真好用)直接打开,进入到META-INF文件夹下
- 打开MANIFEST.MF,添加
Main-Class: xxx.xxx(主类名)
//":"后有空格
//这里如果主类在某文件夹下,例如我的主类文件夹P2/turtle之下,则需要写全路径,以“.”分隔。
- 保存退出,命令行进入jar存放的目录下,执行命令
java -jar xxx.jar
关于Map返回索引集合的方法
创建一个map对象后,可以利用其中的keySet()方法返回map中的所有key(键),即
Map<Integer,String> graph = new HashMap<Integer, String>();
Set<Integer> keyset = graph.keySet();
注意,这里的keyset只是原graph键的一个引用,因此若修改keyset,原graph会受到影响。例如,删除keyset中的数字"1",则graph中以“1”为键的键值对会随之被删除。
Git上传仓库至Github
- 进入对应文件夹
cd repo
- 建立远程仓库与本地链接
git remote add origin /path/to/origin.git
- 将欲上传文件复制至当前文件夹后,使用下面的命令加入本地仓库
git add .
- commit仓库,’ '内可添加描述
git commit -m 'just a case'
- push至远程仓库
git push origin master