import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;// 注意类名要大写
public class Temp
{
public static void main(String [] args)
{
try
{
String head = "Name,ID,DS,DB";
byte[] c = new byte[40];
c = head.getBytes();
System.out.println(new String(c));
String record = ""; // 判断文件是否存在
File dir = new File("c:\\student.txt");
if(dir.exists())
{
// 是否有内容
FileInputStream infile = new FileInputStream(dir);
if(infile.read() < 0)
{
record = "Name ID DS DB" + "\r\n";
}
infile.close();
}
BufferedWriter fo = new BufferedWriter(new FileWriter("c:\\student.txt",true));
String[] info = new String[4];
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
for (int i = 0; i < info.length; i++)
{
info[i] = reader.readLine();
record += info[i] + "\t\n";
}
System.out.println(record); fo.write(record); // 换行
fo.write("\r\n");
fo.close();
}
catch (FileNotFoundException fe)
{
System.out.println("File Not Found");
}
catch (IOException ie)
{
System.out.println("IO Exception");
}
}
}如果执行两次程序,你们想想会有什么结果呢,!就会出现两个HEAD变量的信息,应该怎么避免,还有我应该怎么解决空值问题
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;// 注意类名要大写
public class Temp
{
public static void main(String [] args)
{
try
{
String head = "Name,ID,DS,DB";
byte[] c = new byte[40];
c = head.getBytes();
System.out.println(new String(c));
String record = ""; // 判断文件是否存在
File dir = new File("c:\\student.txt");
if(dir.exists())
{
// 是否有内容
FileInputStream infile = new FileInputStream(dir);
if(infile.read() < 0)
{
record = "Name ID DS DB" + "\r\n";
}
infile.close();
}
BufferedWriter fo = new BufferedWriter(new FileWriter("c:\\student.txt",true));
String[] info = new String[4];
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
for (int i = 0; i < info.length; i++)
{
info[i] = reader.readLine();
record += info[i] + "\t\n";
}
System.out.println(record); fo.write(record); // 换行
fo.write("\r\n");
fo.close();
}
catch (FileNotFoundException fe)
{
System.out.println("File Not Found");
}
catch (IOException ie)
{
System.out.println("IO Exception");
}
}
}如果执行两次程序,你们想想会有什么结果呢,!就会出现两个HEAD变量的信息,应该怎么避免,还有我应该怎么解决空值问题
解决方案 »
- JAVA SE 做工控上位机的问题
- 如何给jframe中的components也加上和jframe一样的事件监听
- 大家来参与下!
- 高手帮下菜鸟关于RandomAccessFile
- vc如何掉用java程序(急)
- 无法负值到jtable,帮看看问题出在哪里 谢谢
- 请问有哪位大侠用过jxl.jar这个包,假如一个cell是多行多列的怎么设置?
- 在线等待!有谁能告诉我RESULTSET中怎样判断这个结果集是否为空?
- 一个关于Java的问题求解,100分(初学者)
- 请教一个问题:JAVA怎么判断局域网内其他机器是否在线(开机)?
- 编译的问题,不是很懂
- 急求:如何实现从一个UI1到UI2,以及从UI2返回UI1的过程?谢谢大家!
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;public class Temp {
public static void main(String[] args) {
// 每次需要输入的数量
final int COUNT = 2;
// 标题
final String HEAD = "Name,ID,DS,DB";
// 文件名
final String FILENAME = "f:/student.txt";
String record = "";
File dir = new File(FILENAME);
if (!dir.exists()) {
record = HEAD + "\r\n";
}
try {
BufferedWriter fo = new BufferedWriter(new FileWriter(FILENAME, true));
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
System.out.println(HEAD);
for (int i = 0; i < COUNT; i++) {
System.out.printf("请输入第[%d]个数据:", i+1);
String info = reader.readLine();
// 对输入的数据进行检验
if(!info.matches(".+,\\d+,\\d+,\\d+")){
System.out.println(" ** 不符合规范,请重新输入**");
i--;
}else{
record += info + "\r\n";
}
}
System.out.println(record);
fo.write(record);
fo.close();
} catch (FileNotFoundException fe) {
System.out.println("File Not Found");
} catch (IOException ie) {
System.out.println("IO Exception");
}
}
}