| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 846 人关注过本帖
标题:[讨论]关于IO既问题
取消只看楼主 加入收藏
hjq
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-11-21
收藏
 问题点数:0 回复次数:6 
[讨论]关于IO既问题

我写了一个小程序,意思是说从2.txt里复制一行文字到1.txt里面,但是程序写了出来,编译也通过了,
但是运行的时候呢,就是不能执行这个复制操作.想不明白,所以请大家帮忙帮忙

import java.io.*;

public class io1
{
Writer w;
BufferedReader in;
String s;
public io1()
{
try {
w = new FileWriter(new File("c://1.txt"));
in = new BufferedReader(new FileReader(new File("c://2.txt")));
s=in.readLine();
System.out.println(s) ;
w.write(s);
w.close();
in.close();
}
catch(Exception e)
{}
}
public static void main(String[] args) {
new io();
}
}

搜索更多相关主题的帖子: 执行 public import 
2006-11-29 22:17
hjq
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-11-21
收藏
得分:0 
但是我的S是读取了一整行的字符哦,不是一个一个地读呀.

[此贴子已经被作者于2006-11-30 13:42:12编辑过]



2006-11-30 13:41
hjq
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-11-21
收藏
得分:0 
我编译了一下,发现真的行哦,但是我有一个问题,我查看了一下java的API 它的里面的BufferedReader 这个类的一个方法readLine是读取一整行的字符 你看它的返回值都是一个String 类型了,为什么用FileReader把  S  写入 1.txt的时候要用一个一个字符来写呢?

2006-11-30 13:50
hjq
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-11-21
收藏
得分:0 
  刚才看过了java的API 原来 我当时看错了,原来BufferedWriter里面的write原来没有好似BufferedReader那样有类似readLine的功能可以写一整行的,那为什么java有没有提供类可以写入String类型的方法呢?不会是自己要实现嘛?

2006-11-30 13:55
hjq
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-11-21
收藏
得分:0 
那么为什么要用一个while(true)的循环来写那个
while(s!=null){
System.out.println(s) ;
w.write(s+"\r\n"); 这样不是一个字符一个字符的写吗?虽然在API中说是写一个String类型但是后面的参数
                     是用offset来指定String中每一个字符的位置呀.
s=in.readLine();

2006-12-01 23:02
hjq
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-11-21
收藏
得分:0 
那样我从BufferedWriter类里的Writer是这样的哦.还有呀可能大家误会了,我指的是BufferedWriter类呀,不是指Writer类呀,Writer类的确是有一个Writer是写一个String类型的参数,
   这是BufferedWriter的一个Write方法
   void write(String s, int off, int len)
    Write a portion of a String.

2006-12-02 20:16
hjq
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2006-11-21
收藏
得分:0 
嗯,差不多了,还有一个小问题,那个BufferedWriter类的对象 in 你都知道啦,用了in.write(s);
但是你看一下JAVA API里只有一个
  void write(String s, int off, int len) 方法,却没有 void write(String s);的方法
  难道java虚拟机会自己处理后面的两个参数?谢谢了......

2006-12-02 21:05
快速回复:[讨论]关于IO既问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020814 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved