我正在尝试从我的浏览器(Chrome)运行这个用Java编写的简单HelloWorld代码:
public class HelloWorld extends JApplet {
public void init() {
try {
SwingUtilities.invokeAndWait(new Runnable() {
public void run() {
JLabel lbl = new JLabel("Hello World");
add(lbl);
}
});
}
catch (Exception e) {
System.err.println("createGUI didn't complete successfully");
}
}
Run Code Online (Sandbox Code Playgroud)
我用NetBeans编译它,然后创建了一个WebApplication项目.运行applet 的HTML代码是:
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p><applet code="HelloWorld" archive="applet_HelloWorld.jar" width="590" height="530"></applet></p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
如果从NetBeans运行applet,它可以工作.但是当我通过双击运行HTML代码时,会从浏览器弹出以下消息:
您的安全设置已阻止本地应用程序运行.
我尝试使用Internet Explorer和Firefox,但没有尝试.
在最后一次更新Java之后,此消息开始出现.问题出在哪儿?
我需要一个非常简单的函数,允许我通过FTP读取文件的前1k字节.我想在MATLAB中使用它来读取第一行,并根据一些参数,下载最终我真正需要的文件.我在网上发现了一些不幸的例子.在这里,我提出了示例代码,我正在尝试下载一个单独的文件(我正在使用Apache库).
FTPClient client = new FTPClient();
FileOutputStream fos = null;
try {
client.connect("data.site.org");
// filename to be downloaded.
String filename = "filename.Z";
fos = new FileOutputStream(filename);
// Download file from FTP server
InputStream stream = client.retrieveFileStream("/pub/obs/2008/021/ab120210.08d.Z");
byte[] b = new byte[1024];
stream.read(b);
fos.write(b);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (fos != null) {
fos.close();
}
client.disconnect();
} catch (IOException e) {
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
错误在流中返回为空.我知道我以错误的方式传递文件夹名称,但我无法理解我该怎么做.我试过很多方面.
我也尝试过使用URL的Java类:
URL url;
url = new URL("ftp://data.site.org/pub/obs/2008/021/ab120210.08d.Z");
URLConnection con …
Run Code Online (Sandbox Code Playgroud)