4
A
回答
8
Shailen's response是正確的,甚至可以用Stream.pipe短一些。
import 'dart:io';
main() {
new HttpClient().getUrl(Uri.parse('http://example.com'))
.then((HttpClientRequest request) => request.close())
.then((HttpClientResponse response) =>
response.pipe(new File('foo.txt').openWrite()));
}
2
蟒蛇例如,在這個問題掛涉及請求的example.com
內容,並寫入文件的響應。
這裏是你可以做類似的事情在飛鏢:
import 'dart:io';
main() {
var url = Uri.parse('http://example.com');
var httpClient = new HttpClient();
httpClient.getUrl(url)
.then((HttpClientRequest request) {
return request.close();
})
.then((HttpClientResponse response) {
response.transform(new StringDecoder()).toList().then((data) {
var body = data.join('');
print(body);
var file = new File('foo.txt');
file.writeAsString(body).then((_) {
httpClient.close();
});
});
});
}
8
我使用HTTP包很多。如果你想下載一個文件,是不是很大,你可以使用HTTP包一個更簡潔的方法:
import 'package:http/http.dart' as http;
main() {
http.get(url).then((response) {
new File(path).writeAsBytes(response.bodyBytes);
});
}
什麼亞歷山大寫道:將較大文件有更好的表現。如果您經常需要下載文件,請考慮編寫一個輔助函數。
相關問題
- 1. 動態創建使用Dart下載的文本文件
- 2. 使用C++下載文件
- 3. 使用SMB下載文件
- 4. 使用CURL下載文件
- 5. 使用Symfony2下載文件
- 6. 使用angularjs下載文件
- 7. 使用enyo下載文件
- 8. 使用WP7下載文件
- 9. 使用qwebkit下載文件
- 10. 使用JSF下載文件?
- 11. 下載文件,使用mvc2010
- 12. 使用ChromeDriver下載文件
- 13. 使用PHP下載文件
- 14. 使用sharpbox下載文件
- 15. 使用Python下載文件
- 16. 使用HtmlUnit下載文件
- 17. 使用JavaScript下載文件
- 18. 使用AFNetworking下載文件
- 19. 使用wget下載文件
- 20. 使用硒下載文件
- 21. 使用servlet下載文件
- 22. 使用C下載文件#
- 23. 下載使用MVC文件
- 24. 使用JSP下載文件
- 25. 使用Python下載文件
- 26. 使用webService下載文件
- 27. 使用XMLHttpRequest下載文件
- 28. 使用CFNetwork下載文件
- 29. 使用Java下載文件
- 30. 使用webclient下載文件
好吧,這是可行的,但如果內容是圖像怎麼樣?謝謝。 –
Dart API不能更短嗎? 'new new HttpClient()'=>'getUrl()'=>'close()'=>''close()''new StringDecoder()'=>'這是沒有考慮到4次調用'然後()'。 – mezoni
請注意,在最近版本的Dart中,'StringDecoder'類已被'UTF8.decoder'取代。 – lucperkins