读书人

新人求大神解惑

发布时间: 2013-06-19 10:26:41 作者: rapoo

新人求助,求大神解惑

import java.io.DataOutputStream ;
import java.io.File ;
import java.io.FileOutputStream ;
public class DataOutputStreamDemo{
public static void main(String args[]) throws Exception{// 所有异常抛出
DataOutputStream dos = null ;// 声明数据输出流对象
File f = new File("d:" + File.separator + "order.txt") ; // 文件的保存路径
dos = new DataOutputStream(new FileOutputStream(f)) ;// 实例化数据输出流对象
String names[] = {"衬衣","手套","围巾"} ;// 商品名称
float prices[] = {98.3f,30.3f,50.5f} ;// 商品价格
int nums[] = {3,2,1} ;// 商品数量
for(int i=0;i<names.length;i++){// 循环输出
dos.writeChars(names[i]) ;// 写入字符串
dos.writeChar('\t') ;// 写入分隔符
dos.writeFloat(prices[i]) ; // 写入价格
dos.writeChar('\t') ;// 写入分隔符
dos.writeInt(nums[i]) ; // 写入数量
dos.writeChar('\n') ;// 换行
}
dos.close() ;// 关闭输出流
}
};


这个程序中这一段dos.writeChar()这个方法,在JDK文档中明明是要输入int类型的,为什么这里传入的是字符。求解- -

dos.writeChars(names[i]) ;// 写入字符串
dos.writeChar('\t') ;// 写入分隔符

[解决办法]
void writeInt(int v) 参数:v - 要写入的 int 值。
void writeChar(int v) 参数:v - 要写入的 char 值。
你可以相信jdk,但不能不看它的说明,jdk也是会有不足的地方
[解决办法]
writeChar()就是字符啊,你的jdk文部分有吧

读书人网 >J2SE开发

热点推荐