下面是Java批量写入文件和下载图片的完整攻略。
1. 批量写入文件
在Java中批量写入文件可以使用BufferedWriter类和FileWriter类,将要写入文件的内容先存储在一个列表中,然后逐个写入到文件中。以下是示例:
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class BatchWriteFileDemo {
public static void main(String[] args) {
// 创建待写入的数据列表
List<String> dataList = new ArrayList<>();
for (int i = 1; i <= 10; i++) {
dataList.add("Data" + i);
}
// 创建文件路径和文件名
String filePath = "D:\\sample.txt";
// 使用BufferedWriter类和FileWriter类批量写入文件
BufferedWriter writer = null;
try {
writer = new BufferedWriter(new FileWriter(filePath));
for (String data : dataList) {
writer.write(data);
writer.newLine(); // 换行
}
System.out.println("已将数据写入文件!");
} catch (IOException e) {
e.printStackTrace();
} finally {
if (writer != null) {
try {
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
在上述示例中,我们首先创建了一个数据列表dataList,包含了要写入文件的数据。然后我们创建了文件路径和文件名filePath。
在使用BufferedWriter类和FileWriter类进行批量写入文件的过程中,我们需要注意以下几个细节:
- 首先我们使用BufferedWriter类和FileWriter类创建BufferedWriter对象writer,然后逐个写入数据。
- 在写入数据之前需要使用try/catch语句进行异常处理。
- 在写入每一行数据之后,需要使用writer.newLine()换行操作。
- 在写完文件之后需要关闭BufferedWriter对象,以释放资源。
2. 下载图片
在Java中下载图片主要使用HttpURLConnection类,我们可以使用HttpURLConnection类先获取图片的链接地址,然后使用Java IO流下载图片到本地。以下是示例:
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
public class DownLoadImageDemo {
public static void main(String[] args) {
// 设置图片地址
String imgUrl = "https://www.example.com/image.jpg";
// 下载图片到本地
HttpURLConnection conn = null;
InputStream is = null;
FileOutputStream fos = null;
try {
// 创建URL对象并打开连接
URL url = new URL(imgUrl);
conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setConnectTimeout(5000);
// 获取输入流
is = conn.getInputStream();
// 将输入流写到本地文件中
fos = new FileOutputStream("D:\\image.jpg");
byte[] buffer = new byte[4096];
int len;
while ((len = is.read(buffer)) != -1) {
fos.write(buffer, 0, len);
}
System.out.println("已将图片下载到本地!");
} catch (IOException e) {
e.printStackTrace();
} finally {
if (fos != null) {
try {
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (is != null) {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (conn != null) {
conn.disconnect();
}
}
}
}
在上述示例中,我们首先定义了要下载的图片地址imgUrl。
在使用HttpURLConnection类下载图片的过程中,我们需要注意以下几个细节:
- 首先我们使用URL对象和HttpURLConnection类打开图片连接,设置请求方法为GET。
- 在获取输入流is之前,需要设置连接超时时间conn.setConnectTimeout(5000)。
- 在将图片写入本地文件时,利用输出流FileOutputStream对象将下载得到的图片输出内容写入到本地文件中。
- 在使用完IO流后,需要将IO流和连接等关闭以释放资源。
以上是Java批量写入文件和下载图片的示例代码。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java批量写入文件和下载图片的示例代码 - Python技术站