背景介绍:
十六期马上报名要截止了,十个测试题还没有交上去. 但是已经都写好了,不过是在Linux下开发完成的,当我拷到Windows系统中测试时,发现java文件没有换行不说,汉字注释全部乱码! 那么多换行,那么多注释 徒手修改得多大工作量啊..........但是! 毕老师的声音浮现在了耳边! 写了个工具类,实现了将Linux开发的文件转换为Windows下可以正常识别的文件!
代码如下(运行参数可以是一个文件的地址,也可以是多个文件的地址用空格隔开):- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.io.OutputStreamWriter;
- public class FileConvert {
- public static void main(String[] args) {
- for(String s:args){
- convert(s);
- }
- }
- public static void convert(String filePath) {
-
- File fileA = new File(filePath);
- File fileB=new File(filePath.replaceFirst("java", "javax"));
- BufferedReader br=null;
- BufferedWriter bw=null;
- try {
- FileInputStream fis = new FileInputStream(fileA);
- InputStreamReader isr = new InputStreamReader(fis,"utf-8");
- br= new BufferedReader(isr);
-
-
- FileOutputStream fos=new FileOutputStream(fileB);
- OutputStreamWriter osr=new OutputStreamWriter(fos,"GBK");
- bw=new BufferedWriter(osr);
- String buf;
- while((buf=br.readLine())!=null){
- bw.write(buf);
- bw.newLine();
- }
- } catch (IOException e) {
- e.printStackTrace();
- } finally {
- if (br != null) {
- try {
- br.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- if (bw != null) {
- try {
- bw.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
- }
-
-
- }
复制代码 |