【开源中国 APP 全新上线】“动弹” 回归、集成大模型对话、畅读技术报告”
为什么我在本论坛下载的JAVA软件代码编译后在手机上运行打不开,本人是新手,求高手指点?高手帮我看看还缺少什么?
下载的代码是个文件下载器的。代码如下:
001 import java.awt.BorderLayout;
002 import java.awt.Dimension;
003 import java.awt.FlowLayout;
004 import java.awt.Toolkit;
005 import java.awt.event.ActionEvent;
006 import java.awt.event.ActionListener;
007 import java.io.FileOutputStream;
008 import java.io.InputStream;
009 import java.net.URL;
010 import java.net.URLConnection;
011
012 import javax.swing.JButton;
013 import javax.swing.JFrame;
014 import javax.swing.JPanel;
015 import javax.swing.JScrollPane;
016 import javax.swing.JTextArea;
017 import javax.swing.JTextField;
018 import javax.swing.ScrollPaneConstants;
019
020 //测试类
021 public class Exec {
022 public static void main(String[] args) {
023 // 创建窗体类变量
024 DemoWindow dw = new DemoWindow("网络文件下载");
025
026 // 将窗体的宽度和高度分别设置为屏幕宽度和屏幕高度的1/3,左上角位置也设置为屏幕宽度和屏幕高度的1/3处
027 Toolkit theKit = dw.getToolkit();
028 Dimension wndSize = theKit.getScreenSize();
029 dw.setBounds(wndSize.width / 3, wndSize.height / 3, wndSize.width / 3,
030 wndSize.height / 3);
031
032 // 点击关闭按钮可以退出程序
033 dw.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
034
035 // 设置窗体为可见
036 dw.setVisible(true);
037 }
038 }
039
040 // 界面窗体
041 class DemoWindow extends JFrame implements ActionListener {
042 // 输入网络文件URL的文本框
043 JTextField jtf = new JTextField(25);
044
045 // 操作按钮
046 JButton jb = new JButton("下载");
047
048 // 显示网络文件信息的文本区
049 JTextArea jta = new JTextArea();
050
051 // 设置文本区的滚动条
052 int v = ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED;
053 int h = ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED;
054 JScrollPane jsp = new JScrollPane(jta, v, h);
055
056 // 布局面板
057 JPanel jp = new JPanel();
058
059 // 网络文件下载
060 Downloader downloader;
061
062 // 构造函数
063 public DemoWindow(String title) {
064 super(title);
065
066 // 窗体布局
067 jp.setLayout(new FlowLayout(FlowLayout.LEFT));
068 jp.add(jtf);
069 jp.add(jb);
070 add(jp, BorderLayout.NORTH);
071 add(jsp, BorderLayout.CENTER);
072
073 // 添加事件监听器
074 jtf.addActionListener(this);
075 jb.addActionListener(this);
076 }
077
078 // 响应单击按钮
079 public void actionPerformed(ActionEvent e) {
080 // 创建网络文件下载类变量
081 downloader = new Downloader(jtf.getText(), jta);
082
083 // 启动下载线程
084 Thread thread = new Thread(downloader);
085 thread.start();
086 }
087 }
088
089 // 网络文件下载类
090 class Downloader implements Runnable {
091 // 网络文件的URL
092 String urlString;
093
094 // 显示网络文件信息的文本区
095 JTextArea jta;
096
097 // 构造函数
098 public Downloader(String urlString, JTextArea jta) {
099 // 设置属性
100 this.urlString = urlString;
101 this.jta = jta;
102 }
103
104 // 下载网络文件的线程方法
105 public void run() {
106 // 网络文件的相关信息
107 StringBuffer info = new StringBuffer();
108 try {
109 // 网络文件的URL
110 URL url = new URL(urlString);
111
112 // 打开该网络文件的URL连接
113 URLConnection urlConn = url.openConnection();
114
115 // 添加网络文件的相关信息
116 info.append("主机: " + url.getHost() + "\n");
117 info.append("端口: " + url.getDefaultPort() + "\n");
118 info.append("网络文件的类型: " + urlConn.getContentType() + "\n");
119 info.append("长度: " + urlConn.getContentLength() + "\n");
120 info.append("正在下载...");
121
122 // 显示网络文件的相关信息
123 jta.setText(info.toString());
124
125 // 创建网络文件的输入流
126 InputStream is = urlConn.getInputStream();
127
128 // 获取网络文件的文件名称
129 String localFileName = url.getFile().substring(
130 url.getFile().lastIndexOf("/") + 1);
131
132 // 创建本地文件输出流
133 FileOutputStream fos = new FileOutputStream(localFileName);
134
135 // 读取网络文件到本地文件
136 int data;
137 while ((data = is.read()) != -1) {
138 fos.write(data);
139 }
140
141 // 关闭流
142 is.close();
143 fos.close();
144 } catch (Exception e) {
145 System.out.println(e.getMessage());
146 }
147 jta.append("下载完毕!");
148 }
149 }
抱歉,oschina不提供软件下载 :)
另外,代码分享中的代码只是片段!
引用来自#2楼“红薯”的帖子
抱歉,oschina不提供软件下载 :)
另外,代码分享中的代码只是片段!
为什么会这样?
引用来自#3楼“ashuang345”的帖子
引用来自#2楼“红薯”的帖子
抱歉,oschina不提供软件下载 :)
另外,代码分享中的代码只是片段!
为什么会这样?
因为oschina不想成为软件下载站,代码分享主要用来分享代码中的某个对大家有用的方法,而不是一个完整的项目。
引用来自#4楼“红薯”的帖子
引用来自#3楼“ashuang345”的帖子
引用来自#2楼“红薯”的帖子
抱歉,oschina不提供软件下载 :)
另外,代码分享中的代码只是片段!
为什么会这样?
因为oschina不想成为软件下载站,代码分享主要用来分享代码中的某个对大家有用的方法,而不是一个完整的项目。
那想要这个软件的完整代码来研究学习不是很渺茫了吗?