就像标题所述,我只是想下载一个test.txt文件,下面的url并在内部保存,理想情况下是在drawable中。
我一直在尝试修改此工作,但没有成功我一直“无法下载null”错误
int count;
try {
URL url = new URL("https://www.darkliteempire.gaming.multiplay.co.uk/testdownload.txt");
URLConnection conexion = url.openConnection();
conexion.connect();
int lenghtOfFile = conexion.getContentLength();
InputStream is = url.openStream();
File testDirectory = new File(Environment.getExternalStorageDirectory() + "/Download");
if (!testDirectory.exists()) {
testDirectory.mkdir();
}
FileOutputStream fos = new FileOutputStream(testDirectory + "/test.txt");
byte data[] = new byte[1024];
long total = 0;
int progress = 0;
while ((count = is.read(data)) != -1) {
total += count;
int progress_temp = (int) total * 100 / lenghtOfFile;
fos.write(data, 0, count);
}
is.close();
fos.close();
} catch (Exception e) {
Log.e("ERROR DOWNLOADING", "Unable to download" + e.getMessage());
}
必须有一种更简单的方法吗? 文件本身很小,可能有3或4行文字,所以我不需要任何花哨的东西
答案 0 :(得分:1)
请更新以下代码行并写下有效的网址。
URL url = new URL("https://www.http://darkliteempire.gaming.multiplay.co.uk/testdownload.txt");
写完有效网址后,你的代码行看起来像这样。
URL url = new URL("http://www.darkliteempire.gaming.multiplay.co.uk/testdownload.txt");
它将解决您的问题。
答案 1 :(得分:0)
使用AQuery library可以获得非常简单的内容。此外,您还可以利用其他很酷的功能来缩短代码。
http://code.google.com/p/android-query/wiki/AsyncAPI
String url = "https://picasaweb.google.com/data/feed/base/featured?max-results=16";
File ext = Environment.getExternalStorageDirectory();
File target = new File(ext, "aquery/myfolder/photos.xml");
aq.progress(R.id.progress).download(url, target, new AjaxCallback<File>(){
public void callback(String url, File file, AjaxStatus status) {
if(file != null){
showResult("File:" + file.length() + ":" + file, status);
}else{
showResult("Failed", status);
}
}
});