java從服務(wù)器下載文件獲取文件修改時(shí)間

2023-05-24 15:15:49 北斗時(shí)源

要從服務(wù)器下載文件并獲取文件的修改時(shí)間,您可以使用 Java 的標(biāo)準(zhǔn)庫(kù)和一些網(wǎng)絡(luò)通信的類來(lái)實(shí)現(xiàn)。下面是一個(gè)基本的示例代碼:


```java

import java.io.BufferedInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import java.net.URL;

import java.net.URLConnection;

import java.nio.file.Files;

import java.nio.file.Path;

import java.nio.file.attribute.FileTime;


public class FileDownloader {

    public static void main(String[] args) {

        String fileURL = "http://example.com/file.txt"; // 替換為實(shí)際的文件 URL

        String saveDir = "/path/to/save/directory"; // 替換為實(shí)際的保存目錄


        try {

            // 從服務(wù)器下載文件

            downloadFile(fileURL, saveDir);


            // 獲取文件的修改時(shí)間

            Path filePath = Path.of(saveDir, "file.txt"); // 替換為實(shí)際保存的文件名

            FileTime modifiedTime = Files.getLastModifiedTime(filePath);

            System.out.println("文件的修改時(shí)間:" + modifiedTime);

        } catch (IOException e) {

            e.printStackTrace();

        }

    }


    public static void downloadFile(String fileURL, String saveDir) throws IOException {

        URL url = new URL(fileURL);

        URLConnection connection = url.openConnection();

        try (BufferedInputStream in = new BufferedInputStream(connection.getInputStream());

             FileOutputStream out = new FileOutputStream(Path.of(saveDir, "file.txt").toString())) { // 替換為實(shí)際保存的文件名

            byte[] dataBuffer = new byte[1024];

            int bytesRead;

            while ((bytesRead = in.read(dataBuffer, 0, 1024)) != -1) {

                out.write(dataBuffer, 0, bytesRead);

            }

        }

    }

}

```


上述代碼中,`fileURL` 變量是要下載的文件的 URL,`saveDir` 變量是要保存文件的目錄。您需要將這些變量替換為實(shí)際的文件 URL 和保存目錄。


代碼中的 `downloadFile` 方法使用 `URL` 和 `URLConnection` 來(lái)建立與服務(wù)器的連接,并從服務(wù)器下載文件到本地保存目錄。


獲取文件的修改時(shí)間使用 `Files.getLastModifiedTime` 方法,該方法返回一個(gè) `FileTime` 對(duì)象,表示文件的修改時(shí)間。


請(qǐng)確保您具有從服務(wù)器下載文件的權(quán)限,并且網(wǎng)絡(luò)連接正常。還要注意,在實(shí)際使用時(shí),您可能需要處理異常和錯(cuò)誤情況,并進(jìn)行適當(dāng)?shù)腻e(cuò)誤處理和文件路徑處理。


首頁(yè)
產(chǎn)品
聯(lián)系