求一个手机java平台用的txt文档编辑器件编辑器,就是类似电脑...

2012年8月 总版技术专家分月排行榜第三2012年7月 总版技术专家分月排行榜第三
2014年8月 高性能开发大版内专家分月排行榜第一2013年11月 高性能开发大版内专家分月排行榜第一2012年12月 Java大版内专家分月排行榜第一2012年11月 Java大版内专家分月排行榜第一2012年10月 Java大版内专家分月排行榜第一2012年9月 Java大版内专家分月排行榜第一2012年8月 Java大版内专家分月排行榜第一2012年7月 Java大版内专家分月排行榜第一2012年6月 Java大版内专家分月排行榜第一2012年5月 Java大版内专家分月排行榜第一2012年4月 Java大版内专家分月排行榜第一2012年3月 Java大版内专家分月排行榜第一2012年2月 Java大版内专家分月排行榜第一2012年1月 Java大版内专家分月排行榜第一
本帖子已过去太久远了,不再提供回复功能。用JAVA编写一个迷你编辑器
用JAVA编写一个迷你编辑器
WINDOWS的记事本程序是非常方便的一个文字处理工具,用它来编辑纯文本文件快捷而灵巧。我用JAVA写了一个编辑器程序,模仿“记事本”的功能。这不是为了替代记事本,而是因为下列两个目的:
编辑器中拥有的功能是一切与文字相关的软件的基本功能,其许多功能的实现方法可以为其它程序所借鉴。甚至可以发展成一个独立的实用程序。
2 因为编程中用到多方面的知识,所以可作为初学者综合所学知识的一次实践机会。
本程序命名为Notepad.java,用命令行:java Notepad 运行后呈现如下的界面图:
一 本程序的功能
本程序只有一个菜单条和一个带滚动条的编辑区域。菜单条有如下功能”
文件菜单,包含新建、打开、保存和另存为,退出等菜单项,用法与WINDOWS的记事本相仿,如弹出文件的打开对话框、保存对话框等。
编辑菜单,用以完成文字的复制、粘贴和删除任务。
格式菜单,设置文本自动换行、设置字体和输入当前日期。
显示帮助的内容和Abort信息。
二 设计和编写代码
编程分两步走。第一步先设计好如上的用户界面,编译通过后程序有了一个空壳。第二步在逐个给菜单项写功能代码,就是给每个菜单项编写一个监听器类,并添加到相应的菜单项上。
㈠ 菜单和文本框的设计
菜单和菜单项的声明在类开始出定义,创建菜单和文本区则在类的构造器中完成。菜单的声明如下:
public class Notepad extends JFrame {
private JTextArea text = new JTextArea(30, 48);
private Clipboard clipbd =
& getToolkit().getSystemClipboard();
private String fileName = "未命名" ;
private boolean isNamed =
private String content = "" ;
private JMenuBar mb = new JMenuBar();
private JMenu
&file = new JMenu("文件") ,
&edit = new JMenu("编辑"),
&style= new JMenu("格式"),
&help = new JMenu("帮助");
private JMenuItem fileItem[] = {
&new JMenuItem("新建"),
&new JMenuItem("打开"),
&new JMenuItem("保存"),
&new JMenuItem("另存为"),
&new JMenuItem("退出"),
private JMenuItem editItem[] = {
&new JMenuItem("复制"),
&new JMenuItem("粘贴") ,
&new JMenuItem("删除"),
&new JMenuItem("全选"),
private JMenuItem styleItem[] = {
&new JMenuItem("自动换行"),
&new JMenuItem("字体") ,
&new JMenuItem("日期"),
&new JMenuItem("Java"),
private JMenuItem helpItem[] = {
&new JMenuItem("帮助"),
&new JMenuItem("关于"),
声明了文本区text作为编辑区域,声明了剪贴板对象Clipboard
clipbd用于编辑操作。fileName保存“打开或保存”的文件名,content&
用来保存从文件读写的内容,boolean isNamed
用来记录编辑区中的内容是否和一个文件相关联。如果文件已经有了名字,“保存”菜单就直接写入该文件,否则要先打开“保存对话框”。新建文件时
isNamed 为假,窗口标题显示“未命名”。接着就生命了菜单条mb 和 四个菜单file,edit,style, help
以及他们的菜单项。用fileItem[]来定义菜单项,便于以后要扩充菜单,这要增加一行 new
JMenuItem("XXX"),和添加一个监听类XXXl 就可以了。
㈡ 在构造器中构建视窗
在构造器中创建菜单,假如文本区,各菜单项添加监听器。
public Notepad() {
&setJMenuBar(mb); // 窗口设置菜单条
&Container cp = getContentPane() ;
&cp.add(new JScrollPane(text)); //
添加有滚动条的文本区
&text.setText("") ;
&mb.add(file) ; //加入文件菜单
&for(int i=0; i
&& file.add(fileItem[i]) ;
&mb.add(edit) ; //加入编辑菜单
&for(int i=0; i
&& edit.add(editItem[i]) ;
&mb.add(style) ;& for(int i=0 ;
&& style.add(styleItem[i])
&mb.add(help) ;
&for(int i=0 ; i
&help.add(helpItem[i]) ;
&text.setFont(new Font("system",0,14)) ;
&StringSelection clipString = new
StringSelection("") ;
&clipbd.setContents(clipString ,clipString);
// 为菜单项添加监听器。
&fileItem[0].addActionListener(new NewL());
&fileItem[1].addActionListener(new OpenL());
&fileItem[2].addActionListener(new SaveL());
&fileItem[3].addActionListener(new
SaveAsL());
&fileItem[4].addActionListener(new ExitL());
&editItem[0].addActionListener(new CopyL());
&editItem[1].addActionListener(new
PasteL());
&editItem[2].addActionListener(new CutL());
&editItem[3].addActionListener(new
AllselectL());
&styleItem[0].addActionListener(new
&styleItem[1].addActionListener(new
&styleItem[2].addActionListener(new
&setTitle("采摘器" + "--" +fileName) ;
用循环语句加入菜单项,以后增加菜单项时此处代码不用修改。而加入菜单时不用&
循环方法,而个别加入是为了程序易读,增加菜单的几率是比较小的。
加入 main() 方法后程序就可以运行了。(先把添加监听器的这断代码注释掉!)
public static void main(String[] args) {
&Notepad npd = new Notepad();
&npd.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
&npd.setSize(400,240);
&npd.setVisible(true) ;
——下一篇&功能的实现(代码)
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。java在编译.java文件和Class文件有关系吗? - 开源中国社区
当前访客身份:游客 [
当前位置:
&无详细内容&
共有10个答案
<span class="a_vote_num" id="a_vote_num_
没看懂什么意思
<span class="a_vote_num" id="a_vote_num_
.java 编译后成为了 .class
<span class="a_vote_num" id="a_vote_num_
我也没看懂。按我理解大概解释下:&
& & &javac 将 .java 源文件编译为 .clsss 文件,
& & &最后由java 来运行 .class 文件。
<span class="a_vote_num" id="a_vote_num_
建议看下基础原理就可以了
<span class="a_vote_num" id="a_vote_num_
.class 是.java 经过javac.exe 编译过的。。。。。.class已经是成型的东西了。
<span class="a_vote_num" id="a_vote_num_
引用来自“lh2007”的答案 什么是.java文件?什么是class文件?
1:.java文件是程序员所写的java源码存储的文档。用txt文档编辑器可以打开,程序员看的懂的程序:如:程序员写的类,方法都放在这个文档里。
2:class文件是.java文件通过javac.exe编译器编译生成的文件。用txt不可以打开编辑,只有机器(电脑)能识别。
他们关系:class文件是由.java文件通过编译器生成出来的。一个.java文件都会生成一个对应的class文件。先有.java后有class。
在编译前没关系。编译后就有关系了。程序员可以用.java文件的代码去控制class文件中的机器码。不知道这么说能不能理解?
一个.java文件都会生成一个对应的class文件。先有.java后有class。
你这句话会害死很多人滴。。。
<span class="a_vote_num" id="a_vote_num_
引用来自“dede.g”的答案引用来自“lh2007”的答案 什么是.java文件?什么是class文件?
1:.java文件是程序员所写的java源码存储的文档。用txt文档编辑器可以打开,程序员看的懂的程序:如:程序员写的类,方法都放在这个文档里。
2:class文件是.java文件通过javac.exe编译器编译生成的文件。用txt不可以打开编辑,只有机器(电脑)能识别。
他们关系:class文件是由.java文件通过编译器生成出来的。一个.java文件都会生成一个对应的class文件。先有.java后有class。
在编译前没关系。编译后就有关系了。程序员可以用.java文件的代码去控制class文件中的机器码。不知道这么说能不能理解?
一个.java文件都会生成一个对应的class文件。先有.java后有class。
你这句话会害死很多人滴。。。 恩啦,不过对新人来说,这样的回复比较容易让其理解。不过不要忘记内部类等,还是严谨点好
<span class="a_vote_num" id="a_vote_num_
引用来自“Roger蛋蛋”的答案引用来自“dede.g”的答案引用来自“lh2007”的答案 什么是.java文件?什么是class文件?
1:.java文件是程序员所写的java源码存储的文档。用txt文档编辑器可以打开,程序员看的懂的程序:如:程序员写的类,方法都放在这个文档里。
2:class文件是.java文件通过javac.exe编译器编译生成的文件。用txt不可以打开编辑,只有机器(电脑)能识别。
他们关系:class文件是由.java文件通过编译器生成出来的。一个.java文件都会生成一个对应的class文件。先有.java后有class。
在编译前没关系。编译后就有关系了。程序员可以用.java文件的代码去控制class文件中的机器码。不知道这么说能不能理解?
一个.java文件都会生成一个对应的class文件。先有.java后有class。
你这句话会害死很多人滴。。。 恩啦,不过对新人来说,这样的回复比较容易让其理解。不过不要忘记内部类等,还是严谨点好,谢谢提醒...铭刻于心!
<span class="a_vote_num" id="a_vote_num_
如果你将.java 放到相关.class的同级目录,jvm会比较.java和.class的时间戳,然后取最近的,如果选择.java,则会编译为.class 覆盖原来的.class
<span class="a_vote_num" id="a_vote_num_
有了编译器才有关系,没有编译器,就没关系,
通俗的说,编译器吃的是.java 吐出来的是.class
.java 和.class 是一对一/多关系,因为一个.java文件里可能有多个类定义,比如内部类,静态类,非public类等等,&
更多开发者职位上
有什么技术问题吗?
黄开军的其它问题
类似的话题

我要回帖

更多关于 txt文档编辑器 的文章

 

随机推荐