📅  最后修改于: 2023-12-03 14:57:01.809000             🧑  作者: Mango
在 Dart 中,我们可以使用 http
库来进行网络请求,当然包括下载网络图片。以下是一个简单的示例。
import 'dart:io';
import 'package:http/http.dart' as http;
import 'package:path/path.dart';
void main() async {
var imageUrl =
'https://upload.wikimedia.org/wikipedia/commons/1/1e/Dart_programming_language_logo.svg';
var response = await http.get(Uri.parse(imageUrl));
var fileName = basename(imageUrl);
var file = File(fileName)..writeAsBytesSync(response.bodyBytes);
print('The image has been downloaded to ${file.absolute.path}');
}
dart:io
,用于后续的文件操作。http
库,用于发起网络请求。path
库,用于处理文件路径。async
标记为异步函数,用于支持 await
。http.get
发起 GET 请求,并返回响应对象 response
。basename
函数用于获取 URL 中的文件名。File
对象。writeAsBytesSync
将响应的二进制数据写入文件。使用 Dart 下载网络图片与其他编程语言类似,使用 http 库发起 GET 请求,处理响应,将图片保存到文件。另外,这段代码还演示了如何从 URL 中获取文件名,以及如何使用 File
类创建文件对象。