代码编辑器的java实现

代码编辑器的java实现摘要如果我们把不同的程序开发人员比作三国演义中的各路诸侯大将的话,那么代码编辑器绝对可以称之我们手中的神兵利器。对于每个程序猿来说,内心的深处都想有一把自己的“青龙偃月刀”和属于自己的一个代码编辑器。我也有这个想法,我也想自己写一个代码编辑器来满足我的内心深处。所以这次java的课程作业我选择了这个题目!关键词:Java;代码编辑器;关键字变色;编译和运行前言通过一学期的Java学习,我对Java的理论知识有了一些了解但是,只有理论联系实际才能更好的掌握理论,所以这次Java课程设计我选择了Java程序编辑器这个课题,希望可以锻炼自己的动手能力。我上交给老师您的代码是我参考的网上的一个牛人写的代码,并在他的代码上进行了功能的增加,至于我增加了多少功能,我会论文的附录中给出详细的对比。1.软件的定义编写一个界面像Windows系统的记事本的代码编辑器,功能比记事本更强大(针对某一方面)具备以下功能:打开、保存文件功能;能够识别Java中的关键字并能将关键字以高亮的形式显示出来;能够批量的删除代码中的注释;能通过按下按钮调用DOS窗口;能编译和运行Java程序;能够检查括号是否匹配。2.开发环境IDE:eclipseJDK:jdk-7u45-windows-x64OS:Windows7—X643.代码的详细说明主界面:syntaxcolor.v4包中的DemoFrame.java文件,主界面就是一个Frame,然后在上面加上一个菜单栏,一个工具栏和两个Panel,一个panel里面放着JTextPane,另一个里面放着一个几个JLable,用来显示当前鼠标是在第几行,第几列,该Panel放在Frame最下面。菜单栏:总共有3个JMenu,一个是文件,一个是编辑,一个是帮助。3个菜单里面各有下拉菜单。文件JMenu有2个JMenuItem分别为openMenuItem、ExitMenuItem,编辑JMenu有2个JMenuItem分别为cutMentItem、pasteMEnuItem,帮助JMenu有一个JMenuItem是aboutMenuItem用来显示代码编辑器的相关的信息。工具栏:从左到右分别为打开文件、新建文件,保存、批量去除注释、调用DOS窗口、编译执行和运行Java程序、括号的匹配。下面详细的介绍每个工具栏的按钮打开文件按钮:此时选择打开窗口可以看到的Test.java程序。代码的实现:创建一个BufferedReader类型的br来读取从打开文件的对话框中选择的文件,读取到Panel1中的jTextPane中。新建文件按钮:说明:如果JTextPane中有字符的话(即代码编辑区有字),先让用户保存,再新建一个新的JTextPane(但是我在实现的时候遇到了问题了,网上的文本编辑器大部分是用JTextArea来实现的,而不是JTextpane来实现的,在JTextPane中没有JTextArea里面的对应的方法,而且我在网上没有找到了好的解决方案,所以我的做法是把按下新建按钮后把当前JTextPane的清空。保存按钮:代码的实现定义一个BufferedWriter类型的bw和FileWriter类型的fw通过bw把字符写到fw对应的文件中去。对应代码中的fileSava()函数和fileSavaAs()函数。批量去除注释代码的实现:是通过将当前的文件保存到默认的路径中去,先将代码中的注释去除,通过将去除到注释的代码保存当前文件的系统目录下,再用打开文件操作来把去除注释的代码重新读入JTextPane中去。在文件的保存路径下,会产生一个“文件名”+“.bak”的文件(该文件为没有注释的文件),这样可以用来批量的删除注释,并保存在对应文件名的.bak文件中DOS窗口的调用通过组合使用Java提供的Runtime类和Process类的方法实现在java中调用DOS命令,因为我自己在编写java的代码的时候,写好了要按win+R按键时还要出入cmd命令,我感觉特别的繁琐,于是我写了这个功能,通过一个按钮就能调用出DOS窗口,方便了用户的使用。对应于compile.java文件。编译和运行对于刚写的代码要进行编译和运行的,我的策略是通过先对文件进行保存,就在这个时候来获取到保存文件的路径以及文件名等信息。然后就是通过通过组合使用Java提供的Runtime类和Process类的方法实现在java中调用DOS命令javac—文件名,编译成功后就会自动的运行,会弹出一个Frame来显示指定的屏幕输出,其实这个的实现是通过用户本地的JDK来实现的,弹出的Frame是把DOS窗口的内容读入...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

文秘专家
机构认证
内容提供者

1

确认删除?