欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java中File與MultipartFile互轉(zhuǎn)代碼示例

 更新時(shí)間:2024年10月10日 09:44:27   作者:不死鳥(niǎo).亞歷山大.狼崽子  
在Java開(kāi)發(fā)中,當(dāng)需要將本地File對(duì)象轉(zhuǎn)換為MultipartFile對(duì)象以處理文件上傳時(shí),可以通過(guò)實(shí)現(xiàn)MultipartFile接口或使用CommonsMultipartFile類(lèi)來(lái)實(shí)現(xiàn),本文提供了詳細(xì)的轉(zhuǎn)換方法和代碼示例,需要的朋友可以參考下

1 概述

當(dāng)我們?cè)谔幚砦募蟼鞯墓δ軙r(shí),通常會(huì)使用MultipartFile對(duì)象來(lái)表示上傳的文件數(shù)據(jù)。然而,有時(shí)候我們可能已經(jīng)有了一個(gè)File對(duì)象,而不是MultipartFile對(duì)象,需要將File對(duì)象轉(zhuǎn)換為MultipartFile對(duì)象進(jìn)行進(jìn)一步處理。

在Java中,F(xiàn)ile對(duì)象表示文件在本地文件系統(tǒng)中的引用,而MultipartFile對(duì)象是Spring框架提供的用于處理文件上傳的接口。MultipartFile接口提供了許多有用的方法,例如獲取文件名、獲取文件內(nèi)容、獲取文件大小等。

2 代碼示例

2.1 引入依賴(lài)

<!--File轉(zhuǎn)MultipartFile需要test包-->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-test</artifactId>
			<version>5.1.9.RELEASE</version>
			<scope>compile</scope>
		</dependency>

2.2 MultipartFile轉(zhuǎn)File

    public static File convert(MultipartFile file) throws IOException {
        File convFile = new File(file.getOriginalFilename());
        convFile.createNewFile();
        FileOutputStream fos = new FileOutputStream(convFile);
        fos.write(file.getBytes());
        fos.close();
        return convFile;
    }

2.3 File轉(zhuǎn)MultipartFile

//file 轉(zhuǎn)換為 MultipartFile
    private  MultipartFile getMulFileByPath(String filePath)
    {
        FileItemFactory factory = new DiskFileItemFactory(16, null);
        String textFieldName = "textField";
        int num = filePath.lastIndexOf(".");
        String extFile = filePath.substring(num);
        FileItem item = factory.createItem(textFieldName, "text/plain", true,
                "MyFileName" + extFile);
        File newfile = new File(filePath);
        int bytesRead = 0;
        byte[] buffer = new byte[8192];
        try
        {
            FileInputStream fis = new FileInputStream(newfile);
            OutputStream os = item.getOutputStream();
            while ((bytesRead = fis.read(buffer, 0, 8192))
                    != -1)
            {
                os.write(buffer, 0, bytesRead);
            }
            os.close();
            fis.close();
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
 
        MultipartFile mfile = new CommonsMultipartFile(item);
        return mfile;
    }

總結(jié) 

到此這篇關(guān)于java中File與MultipartFile互轉(zhuǎn)的文章就介紹到這了,更多相關(guān)java File與MultipartFile互轉(zhuǎn)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論