java更改文件字符集编码

java

/* *

* @Author adolph

* @Description 更改文件的字符集编码

* @Date 9:19 2020/5/26

* @Param [file,contentType]

* @return java.io.File

**/

public File changedContentType(File file,String contentType) throws IOException{

//获取已获取的字符输入流

FileInputStream fis = new FileInputStream(file);

InputStreamReader isr = new InputStreamReader(fis);

BufferedReader br = new BufferedReader(isr);

String str = null;

// 创建StringBuffer字符串缓存区

StringBuffer sb = new StringBuffer();

// 通过readLine()方法遍历读取文件

while ((str = br.readLine()) != null) {

// 使用readLine()方法无法进行换行,需要手动在原本输出的字符串后面加"\n"或"\r"

str += "\n";

sb.append(str);

}

String fileSource = sb.toString();

// 以GBK格式写入文件,file.getAbsolutePath()即该文件的绝对路径,false代表不追加直接覆盖,true代表追加文件

FileOutputStream fos = new FileOutputStream(file.getAbsolutePath(), false);

OutputStreamWriter osw = new OutputStreamWriter(fos, contentType);

try{

osw.write(fileSource);

return file;

}catch(Exception e){

e.printStackTrace();

return null;

}finally {

osw.flush();

osw.close();

fos.close();

br.close();

isr.close();

fis.close();

}

}

 

以上是 java更改文件字符集编码 的全部内容, 来源链接: utcz.com/z/393274.html

回到顶部