Java文件(io)编程之记事本开发详解

2025-05-29 0 84

本文实例为大家分享了java开发简易记事本的具体代码,供大家参考,具体内容如下

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118
public class notepad extends jframe implements actionlistener{

//定义需要的组件

jtextarea jta=null; //多行文本框

jmenubar jmb=null; //菜单条

jmenu jm1=null; //菜单

jmenuitem jmi1=null,jmi2=null; //菜单项

public static void main(string[] args) {

notepad np=new notepad();

}

public notepad(){ //构造函数

jta=new jtextarea(); //创建jta

jmb=new jmenubar();

jm1=new jmenu("文件");

jm1.setmnemonic('f'); //设置助记符

jmi1=new jmenuitem("打开",new imageicon("imag_3.jpg"));

jmi1.addactionlistener(this); //注册监听

jmi1.setactioncommand("open");

jmi2=new jmenuitem("保存");

jmi2.addactionlistener(this);

jmi2.setactioncommand("save");

this.setjmenubar(jmb); //加入

jmb.add(jm1); //把菜单放入菜单条

jm1.add(jmi1); //把item放入到menu中

jm1.add(jmi2);

this.add(jta); //放入到jframe

this.setdefaultcloseoperation(jframe.exit_on_close);

this.setsize(400,300);

this.settitle("记事本");

this.seticonimage((new imageicon("imag_2.jpg")).getimage());

this.setvisible(true);

}

@override

public void actionperformed(actionevent arg0) {

//判断是哪个菜单被选中

if(arg0.getactioncommand().equals("open")){

//jfilechooser,创建一个文件选择组件

jfilechooser jfc1=new jfilechooser();

jfc1.setdialogtitle("请选择文件……"); //设置名字

jfc1.showopendialog(null); //默认方式

jfc1.setvisible(true); //显示

//得到用户选择的文件全路径

string filename=jfc1.getselectedfile().getabsolutepath();

filereader fr=null;

bufferedreader br=null;

try {

fr=new filereader(filename);

br=new bufferedreader(fr);

//从文件中读取信息并显示到jta

string s="";

string allcon="";

while((s=br.readline())!=null){ //循环读取文件,s不为空即还未读完毕

allcon+=s+"\\r\\n";

}

jta.settext(allcon); //放置到jta

} catch (exception e) {

e.printstacktrace();

}finally{

try {

fr.close();

br.close();

} catch (exception e) {

e.printstacktrace();

}

}

}else if(arg0.getactioncommand().equals("save")){

//出现保存对话框

jfilechooser jfc2=new jfilechooser();

jfc2.setdialogtitle("另存为……");

jfc2.showsavedialog(null); //按默认的方式显示

jfc2.setvisible(true);

//得到用户希望把文件保存到何处,文件全路径

string filename2=jfc2.getselectedfile().getabsolutepath();

//准备写入到指定文件

filewriter fw=null;

bufferedwriter bw=null;

try {

fw=new filewriter(filename2);

bw=new bufferedwriter(fw);

bw.write(this.jta.gettext());

} catch (exception e) {

e.printstacktrace();

}finally{

try {

bw.close();

} catch (ioexception e) {

e.printstacktrace();

}

}

}

}

}

运行效果如下

Java文件(io)编程之记事本开发详解

点击文件按钮,点击打开菜单项,选择一个文本文件,效果如下:

Java文件(io)编程之记事本开发详解

打开后,内容显示如下:

Java文件(io)编程之记事本开发详解

对内容稍作修改,另存为名为sss的文件,效果如下:

Java文件(io)编程之记事本开发详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持快网idc。

原文链接:http://www.cnblogs.com/cxq1126/archive/2017/08/11/7347894.html

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 Java文件(io)编程之记事本开发详解 https://www.kuaiidc.com/115477.html

相关文章

发表评论
暂无评论