繁体   English   中英

如何在客户端使用GWT将文本写入文件?

[英]How to write a text to file with GWT on Client-side?

有没有办法在客户端使用gwt实现写/读文件? 我尝试使用java.io.File,java.io.Writer ......我无法成功。

提前thx!

更新:请参阅我自己的答案以获得解决方案

不,您无法在客户端写入文件。 GWT仅绑定Java语言的子集。 任何文件IO都需要通过RPC或某种Web服务在服务器端进行。

在某些现代浏览器中,HTML5可以实现。 试试lib-gwt-file 该库可以从客户端计算机读取文件,甚至支持DND。 要查看它的实际效果,请点击此链接 有关HTML5 FileAPI的更多信息,请参阅规范

要将文件从浏览器内存下载到客户端计算机,您可以使用数据URI 示例在这里 但Google Chrome仅支持此功能。 另请参阅以下有用功能。 它运行下载而不重新加载当前页面:

public static native void setWindowHref(String url)/*-{
    $wnd.location.href = url;
}-*/;

另一种半crossbrowser方式是Downloadify 它基于闪存。 检查此示例

最近,我偶然发现了一个名为client-io的库。

一个简单的库,通过GWT将Flash File API引入常规Web应用程序。 ClientIO将帮助您将一些文件生成功能卸载到客户端,从而为服务器节省资源和繁重的计算。 工作演示 - http://ahome-it.github.io/ahome-client-io/

在GWT中,客户端文件夹中的类仅编译为javascript,因此无法使用

java.io

因为GWT不提供包的编译

java.io

因此,您必须仅通过RPC编写文本文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM