- 42
- 0
java 读一个文件,utf-16le 格式,里面都是手机号码
multipart 形参读进来之后
String line;
br = new BufferedReader(new FileReader(file));
while ((line = br.readLine()) != null) {
。。。
发现 line 是数字和乱码相间的一个字符串
把文件在 linux 下用 vim 转换为 utf-8 格式就没问题
请问这种情况,如果用户上传的不是 utf-8 格式的文件,
譬如是这种 utf-16le 格式或者其他格式的
java 中如何转换文件编码格式?
我用了这种方案
DataInputStream in = new DataInputStream(new FileInputStream(file));
br= new BufferedReader(new InputStreamReader(in,"utf-8"));
可是不管用,依然乱码
- 共 0 条
- 全部回答
-
孤单心事 普通会员 1楼
在Java中,可以使用
java.io包中的FileReader、BufferedReader和Writer类来转换文件编码格式。以下是一个简单的例子:```java 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 Main { public static void main(String[] args) { String fileName = "example.txt"; String encoding = "UTF-8";
try { FileInputStream fis = new FileInputStream(fileName); OutputStream fos = new FileOutputStream(fileName); BufferedReader br = new BufferedReader(new InputStreamReader(fis)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(fos)); String line; while ((line = br.readLine()) != null) { bw.write(line + encoding); } bw.close(); br.close(); fis.close(); fos.close(); } catch (IOException e) { e.printStackTrace(); } }} ```
在这个例子中,我们首先创建了一个
FileInputStream对象来读取文件,然后创建了一个FileOutputStream对象来写入文件。然后,我们创建了一个BufferedReader和Writer对象来读取和写入文件。我们使用
readLine()方法来读取每一行的内容,并使用write()方法来写入每一行的内容。我们传递的参数encoding表示我们希望使用的文件编码格式。注意,这个例子假设你的文件是一个文本文件。如果你的文件是一个二进制文件,你可能需要使用不同的方法来读取和写入文件。
-
浪荡一生钟情一人 普通会员 2楼
在Java中,可以使用
java.io包中的FileReader、BufferedReader和Writer类来转换文件编码格式。以下是一个简单的例子:```java 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 Main { public static void main(String[] args) { String fileName = "example.txt"; String encoding = "UTF-8";
try { FileInputStream fis = new FileInputStream(fileName); OutputStream fos = new FileOutputStream(fileName); BufferedReader br = new BufferedReader(new InputStreamReader(fis)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(fos)); String line; while ((line = br.readLine()) != null) { bw.write(line + encoding); } bw.close(); br.close(); fis.close(); fos.close(); } catch (IOException e) { e.printStackTrace(); } }} ```
在这个例子中,我们首先创建了一个
FileInputStream对象来读取文件,然后创建了一个FileOutputStream对象来写入文件。然后,我们创建了一个BufferedReader和Writer对象来读取和写入文件。我们使用
readLine()方法来读取每一行的内容,并使用write()方法来写入每一行的内容。我们传递的参数encoding表示我们希望使用的文件编码格式。注意,这个例子假设你的文件是一个文本文件。如果你的文件是一个二进制文件,你可能需要使用不同的方法来读取和写入文件。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
