输入输出流实验内容:
1)利用流操作,在屏幕上显示文本文件内容及文件的路径、修改时间、大小、长度、可读性和可修改性等属性。
2)借助流操作,以图形界面的方式向文本文件添加记录并显示其记录内容。实验要求:
文件名通过命令行以参数方式输入。程序需要判断参数提供文件的存在性。待添加的记录通过TextField控件输入,文件内容通过TextArea控件显示。
1)利用流操作,在屏幕上显示文本文件内容及文件的路径、修改时间、大小、长度、可读性和可修改性等属性。
2)借助流操作,以图形界面的方式向文本文件添加记录并显示其记录内容。实验要求:
文件名通过命令行以参数方式输入。程序需要判断参数提供文件的存在性。待添加的记录通过TextField控件输入,文件内容通过TextArea控件显示。
解决方案 »
- hibernate annotation配置持久化对象 映射double类型
- Java中如何调用DOS命令
- 如何叫用戶輸入一堆數字,然後吧數目成(*)起來
- http://www.05335.com/,真是世界上最臭、最恶心的垃圾。
- 急问:怎么java里调用SQL SERVER些好的PROCEDURE啊!
- Inner Class到底有什么大用处?
- 请问编写JSP是否需要另外下载Servlet包 ? ba
- 高分相求,java scjp试题
- JBuilder中默认的Dialog字体打包后脱离JBuilder无法正常显示,急!!
- 过两天可能要用JAVA~开发一个什么工程项目管理的什么软件~具体怎么样我还不知道~
- java如何把值写到pb做的界面中
- 通过SmartInvoke用java与flex轻松构建cs程序
问题2,给文本文件添加记录,利用getText()方法
file.lastModified() //获得与1970/1/1相差得毫秒数,可计算时间
file.length(); //长度,大小和长度一个概念,长度就是字节数,可以换算成文件大小
可读与可写可以直接设置
boolean setReadable(boolean readable, boolean ownerOnly)
设置此抽象路径名的所有者或所有用户的读权限。
boolean setReadOnly()
标记此抽象路径名指定的文件或目录,从而只能对其进行读操作。
boolean setWritable(boolean writable)
设置此抽象路径名所有者写权限的一个便捷方法。
boolean setWritable(boolean writable, boolean ownerOnly)
设置此抽象路径名的所有者或所有用户的写权限。 显示内容等直接使用BufferedReader br = new BufferedReader(new InputStreamReader(new File("路径")));
追加内容使用PrintWriter pw=new PrintWriter(new BufferedWriter(new FileWriter("徐路径",true)));至于GUI,按照描述,十分简单,就不说了
{
private Frame f;
private MenuBar menuBar;
private Menu fileMenu;
private MenuItem openItem,saveItem,closeItem;
private FileDialog openDialog,saveDialog;
private TextArea ta;
private File file;
MyMenu()
{
f = new Frame("mywindow");
f.setLayout(new FlowLayout());
f.setSize(700,600);
f.setLocation(300,150); menuBar = new MenuBar();
fileMenu = new Menu("文件"); openItem = new MenuItem("打开");
saveItem = new MenuItem("保存");
closeItem = new MenuItem("退出");
openDialog = new FileDialog(f,"我的打开",FileDialog.LOAD);
openDialog.setLocation(300,200); saveDialog = new FileDialog(f,"我的保存",FileDialog.SAVE); fileMenu.add(openItem);
fileMenu.add(saveItem);
fileMenu.add(closeItem);
ta = new TextArea(34,96); menuBar.add(fileMenu); f.setMenuBar(menuBar);
f.add(ta); myEvent();
f.setVisible(true);
}
private void myEvent()
{
saveItem.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
if(file==null)
{
saveDialog.setVisible(true);
String dir = saveDialog.getDirectory();
String name = saveDialog.getFile();
if(dir==null || name==null)
{
return ;
}
file = new File(dir,name);
}
try
{
BufferedWriter bufw = new BufferedWriter(new FileWriter(file)); bufw.write(ta.getText());
bufw.flush();
bufw.close();
}
catch (IOException ex)
{
System.out.println("save:"+ex.toString());
}
}
}); openItem.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{ openDialog.setVisible(true); String dir = openDialog.getDirectory();
String name = openDialog.getFile();
if(dir==null || name==null)
{
return ;
}
ta.setText("");
//System.out.println(dir+".."+name);
file = new File(dir,name);
try
{
BufferedReader bufr =
new BufferedReader(new FileReader(file)); String line = null;
while((line=bufr.readLine())!=null)
{
ta.append(line+"\r\n");
}
bufr.close();
}
catch (IOException ex)
{
System.out.println("read:"+ex.toString());
}
}
}); closeItem.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}); f.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
}
}class MyMenuDemo
{
public static void main(String[] args)
{
new MyMenu();
//System.out.println("Hello World!");
}
}
不过,题目是这样的
实验内容:
1)利用流操作,在屏幕上显示文本文件内容及文件的路径、修改时间、大小、长度、可读性和可修改性等属性。
2)借助流操作,以图形界面的方式向文本文件添加记录并显示其记录内容。实验要求:
文件名通过命令行以参数方式输入。程序需要判断参数提供文件的存在性。待添加的记录通过TextField控件输入,文件内容通过TextArea控件显示。