如何用java桌面关闭桌面打开的txt文档

我的电脑桌面上有a.txt这个文件如哬编写java桌面代码将其内容以控制台输出?


用 JDIC 在桌面应用程序中集成本机操莋系统特性

开发人员和用户对 Swing 最大的一个抱怨(也是对 java桌面 编程语言整体上的抱怨)是客户端应用程序给人的感觉与本机应用程序的不哃。(本机应用程序是指用采用操作系统内置库的编程语言编写的应用程序例如运行在 Windows 上的 Visual C++ 应用程序。)虽然 java桌面 应用程序表现得像本機应用程序那样好但是还是遗漏了某些地方,从而使用户注意到了差异基本的问题是 java桌面 应用程序 不能真正地表现得像本机应用程序那样,因为本机应用程序有其不公平的一面:它们可以专门针对操作系统进行编写这让它们可以利用特别的本机操作系统函数。java桌面 代碼受到自己“随处运行”的咒语限制并且调用本机函数(例如通过 java桌面 本机接口)是一个大忌。

从开始的时候起java桌面 语言就固守“编寫一次,随处运行”的咒语不幸的是,这个咒语对程序员已经变成“根本不能操作特定于操作系统的任何东西”客户端应用程序的在這方面表现得最明显。比起本机应用程序(可以利用运行它们的操作系统的每个独特特性)用户第一眼就可以看到 java桌面 应用程序外观上與生俱来的不足。JDIC 项目包含多个组件目的是提供新的跨平台解决方案,消除 java桌面 应用程序和应用程序的差距JDIC 试图通过提供标准的 API(针對每个操作系统的 JNI 调用进行分支)弥补 java桌面 的每个不足之处。JDIC 还提供了本机库文件(.dll 或 .mo) 可以用它们把 java桌面 调用连接到本机操作系统的內置功能。结果是产生一套单一的 java桌面 API可以根据它运行所在的操作系统,调用不同的本机代码

直到现在,java桌面 开发人员一直希望用这個不足换取能够编写在任何操作系统上均可运行的软件的优势但是,随着 java桌面 SE 5 的发布特别是 Sun 对增强 java桌面 桌面的推动,有些开发人员想讓 java桌面 应用程序和本机应用程序之间的差异最终消失创建 JDIC 就是了为消除这个差异(请参阅 )。就像 JDIC Web 站点声称的那样JDIC 的目标是“让基于 java桌面 技术的(‘ java桌面 应用程序’) 在不牺牲平台独立性的情况下,成为当前桌面平台的一等公民”

这本文将介绍 JDIC 项目,以及它如何成功哋让 java桌面 客户端应用程序表现得更加本机化通过一系列示例,您可以看到 JDIC 中目前所拥有的组件以及尚在“孵化器”中(工作进行中)嘚一些组件。我们将要介绍 JDIC 所提供的差不多每个组件在理想情况下,这些将激发您足够的兴趣让您将 JDIC 应用到您的应用程序中,甚至有助于说服您也为这个项目做点贡献

关于 JDIC 的一个重要说明是:它仍然是一个 beta 项目,这意味着它还没有得到任何 JDK 发行版的支持未来任何时候都可能发生变化。所以一定要把必要的文件与基于 JDIC 的应用程序一同提供因为没有 java桌面 虚拟机(JVM)会支持它。而且因为 API 有可能在发行版の间变化所以这篇文章中的函数名称今后可能会有所不同。

JDIC 项目有两个目标:维护 java桌面 API 的跨平台让程序可以在任何机器上运行,并支歭人们使用的每个操作系统因为新功能要求调用每个操作系统的本机函数,所以这显然处在一个很艰难的位置上JDIC 是通过将其 java桌面 API 作为所有这些本机调用的包装器来实现这一点的。JDIC 组件代码本身指出正在哪个操作系统上运行应用程序并调用适当的 JNI 函数。(您可以看到茬代码内部有针对每个操作系统的 if/else 链。这就是跨平台兼容性的代价)图 1 演示了 JDIC 包装本机调用的方式:

目前,java桌面 应用程序无法使用打开攵件的默认应用程序例如,java桌面 应用程序不能在 Microsoft Word 中打开 .doc它不知道每台机器上 Word 的路径,所以也就无法知道 Microsoft Word 是不是处理 .doc 文件的首选应用程序。而且也没有可以从 java桌面 应用程序打印 .doc 文件的简便方法

JDIC 的 Desktop类创建了一些简单的静态方法,允许 java桌面 应用程序与系统应用程序交互從而解决了这些问题。系统应用程序构建到操作系统之中 —— 只有操作系统才知道哪个应用程序应该打开 .doc 文件

这个组件不像 SystemTray组件那么有鼡,但是确实弥补了一些空白如果要处理不同的文件类型,例如文件浏览器那么任何 java桌面 应用程序都可以使用 Desktop类的方法:

  • 项目的只能鼡于 Windowsr 解决方案和我自己的 IFrame,这是一个“接近完成”的解决方案请参阅 。)

    当用户在 Winows 桌面上右击时他们会看到 New菜单选项,里面包含的子菜单中有用户可以创建的常见文件类型目前 java桌面 语言还不能访问这个菜单。

    用户在 Winows 中的文件上右击时会呈现对这个文件的选择。有些應用程序会随时自动地改变它们在这个选择列表中的默认行为(例如,请注意 WinZip如果已经在机器上安装该软件的话,那么在右击任何文件类型时它会始终是其中的一个选择。java桌面 语言无法永久地向这个菜单添加程序或选择

    SystemInfo类中的附加功能可能很有用,其中包括支持查找进程名称和编号、网络状态、网络连接速度和电池使用寿命

    如果 java桌面 应用程序能够管理操作系统的用户和访问组,包括处理口令管理那会很棒。

    如果让 java桌面 程序可以改变操作系统的时间、日历和时区那会怎么样?

    一般来说JDIC 项目弥补了在 Swing 和 java桌面 程序语言之间的主要差距。随着其他方面的不断努力差距会进一步缩小,总有一天用户会无法区分 java桌面 应用程序和本机应用程序。

    已经看到JDIC (在编写这篇文章时)既包含成熟的、为生产作好准备的项目,又包含孵化器项目(包含不同开发阶段的项目)孵化器提供了一些有趣的项目,不玖的将来这些项目可能会走向成熟。重要的是要记住:如果决定冒险在应用程序中包含孵化器项目由于孵化器随时可能会改变,可能會带来一些问题甚至可能使应用程序根本不工作。

    我的建议是如果喜欢在本文中看到的内容,那就最好加入 JDIC 项目这个项目对所有有興趣参与的人都是开放的,而且就像多数开源项目一样它能做到的取决于人们想要贡献的(请参阅 ,以获得登录您打算参与的项目所在站点的直接链接)不管是想要帮助完成孵化器中的某个项目,还是决定跟踪我的期望列表中的某个想法或是想看到自己的想法走向成熟,开发社区都会极大地感谢您的帮助不要认为自己必须是一名本机代码或 JNI 专家,或者必须知道每个操作系统孵化器项目会让您推敲您的想法,并让您从其他志愿者那里得到反馈和帮助

  • 请下载 版本 0.9,本文以此为基础
  • 请参阅 ,探索项目中的所有功能
  • 请参阅 JDIC 中的 ,获嘚如何设置计算机以运行这篇文章中的 JIC 示例的帮助
  • 在 中,您可以帮助那些已经在孵化器中的项目或者创建自己的想法。
  • 项目提供了标准 Swing 工具包中没有的公共用户界面控件
  • (SWT)组合成一个解决方案,创建带有本机操作系统外观的本机编译的 java桌面 应用程序
  • 还请参阅 ,以獲得 上免费的、以 java桌面 为重点的教程
你肯定有的文本文档没变成代碼
 一种是你的系统文件被误删,另外一种就是你中了顽固木马破坏了系统文件!
下载个“360系统急救箱”已经安装了“360安全卫士”的朋友,直接打开
“查杀木马”“自定义扫描”的下面的“360系统急救箱”,点击它:
【1】开始急救!急救完毕后,立即处理重启!
【2】。開机后“文件恢复区”,彻底删除文件!
【3】“系统修复”,全选立即修复!【关键】
【4】。网络修复开始修复,重启电脑!【關键】
【5】dll文件恢复,扫描一下如果有丢失,添加恢复没有就行了!
我装了金山毒霸的啊 ?
免费的杀毒软件永远不行有一键还原嗎?恢复一下或者重新做系统

你对这个回答的评价是?

我要回帖

更多关于 java桌面 的文章

 

随机推荐