Java打印字符的时候遇到的一些问题
我是用FileReader读取的文本文件,在打印输出的时候分别调用两个重载的打印函数print两个模块的的代码如下:#读取字符部分```fileReader=newFil...
我是用FileReader读取的文本文件,在打印输出的时候分别调用两个重载的打印函数print
两个模块的的代码如下:
# 读取字符部分
```
fileReader = new FileReader(path);
int temp = 0;
while ((temp = fileReader.read())!=-1){
Util.print(1,(char)temp);
//Util.print((char)temp);
// System.out.print((char)temp);
}
```
# 打印部分
```
public class Util {
public static void print(int index,Object object){
System.out.print(String.format("%d,%s",index,object.toString()));
}
public static void print(Object object){
System.out.print(String.format("%s",object.toString()));
}
}
```
## 运行结果:
前面的是调用含有index的print函数,后面的是调用不含index的print函数的执行结果
```
1,
1,
1,
1,
1,
1,
1,
1,这1,是1,下1,一1,行1,\1,r1,\1,n1,表1,示1,换1,行
Process finished with exit code 0
以覆盖的形式将字符串写入到文件中
这是下一行\r\n表示换行
--
以追加的形式将字符串写入到文件中
这是下一行\r\n表示换行
--
以追加的形式将字符串写入到文件中
这是下一行\r\n表示换行
Process finished with exit code 0
```
最近为了秋招准备,打算重新复习一下Java基础,今天在复习IO的时候遇到了这个问题,希望路过的大神给一些意见 展开
两个模块的的代码如下:
# 读取字符部分
```
fileReader = new FileReader(path);
int temp = 0;
while ((temp = fileReader.read())!=-1){
Util.print(1,(char)temp);
//Util.print((char)temp);
// System.out.print((char)temp);
}
```
# 打印部分
```
public class Util {
public static void print(int index,Object object){
System.out.print(String.format("%d,%s",index,object.toString()));
}
public static void print(Object object){
System.out.print(String.format("%s",object.toString()));
}
}
```
## 运行结果:
前面的是调用含有index的print函数,后面的是调用不含index的print函数的执行结果
```
1,
1,
1,
1,
1,
1,
1,
1,这1,是1,下1,一1,行1,\1,r1,\1,n1,表1,示1,换1,行
Process finished with exit code 0
以覆盖的形式将字符串写入到文件中
这是下一行\r\n表示换行
--
以追加的形式将字符串写入到文件中
这是下一行\r\n表示换行
--
以追加的形式将字符串写入到文件中
这是下一行\r\n表示换行
Process finished with exit code 0
```
最近为了秋招准备,打算重新复习一下Java基础,今天在复习IO的时候遇到了这个问题,希望路过的大神给一些意见 展开
2个回答
展开全部
我自己打了一遍
package test5;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
public class testt {
public static void main(String args[]) {
FileReader fr=null;
try {
int re;
fr=new FileReader("E:\\123.txt");
while(( re=fr.read())!=-1) {
//System.out.println((char)re);
pr.print(1, (char)re);
}
} catch (FileNotFoundException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
}
class pr{
public static void print(int index,Object object){
System.out.print(String.format("%d,%s",index,object.toString()));
}
}
没问题啊
package test5;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
public class testt {
public static void main(String args[]) {
FileReader fr=null;
try {
int re;
fr=new FileReader("E:\\123.txt");
while(( re=fr.read())!=-1) {
//System.out.println((char)re);
pr.print(1, (char)re);
}
} catch (FileNotFoundException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
} catch (IOException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
}
class pr{
public static void print(int index,Object object){
System.out.print(String.format("%d,%s",index,object.toString()));
}
}
没问题啊
追问
感谢您的回答,
我跑了一遍你的代码果真没问题,我把你写的和我写的代码对比了一下
只有文件路径不同,我的是用参数传进来的。
我刚刚又把我的测试文本删除了重新替换了一个就没有错误了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询