java檔案讀寫耗時比較
public class ImageSaveServiceImpl implements ImageSaveService { /** * 圖片讀取(一次性讀取) * @param imgPath * @return */ @Override public String saveImage(String imgPath) { long startTime = System.currentTimeMillis();//開始讀取時間 long endTime = 0L; if(imgPath == null){ throw newDctException(ErrorCodeCore.DATA_NOT_NULL); } try { FileInputStream inputStream = new FileInputStream(imgPath);//圖片輸入流 FileOutputStream outputStream = new FileOutputStream("D:/123.jpg"); int size = inputStream.available();//得到檔案總大小 byte[] buff = new byte[size]; inputStream.read(buff);outputStream.write(buff); inputStream.close(); outputStream.close(); endTime = System.currentTimeMillis();//讀取結束時間 } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return "整體讀取耗時:"+(endTime-startTime) + "ms"; } /*** 迴圈讀取 * @param imgPath * @return */ @Override public String saveImage2(String imgPath) { long startTime = System.currentTimeMillis();//開始讀取時間 long endTime = 0L; if(imgPath == null){ throw new DctException(ErrorCodeCore.DATA_NOT_NULL); } try { FileInputStream inputStream = new FileInputStream(imgPath);//圖片輸入流 FileOutputStream outputStream = new FileOutputStream("D:/456.jpg"); //int size = inputStream.available();//得到檔案總大小 int length = 0; byte[] buff = new byte[1024]; while ((length = inputStream.read(buff)) != -1){ outputStream.write(buff,0,length); } //inputStream.read(buff); //outputStream.write(buff); inputStream.close(); outputStream.close(); endTime = System.currentTimeMillis();//讀取結束時間 } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return "迴圈讀取耗時:"+(endTime-startTime) + "ms"; } } 下面是傳入4.16M檔案 第一種和第二種方法的時間對比,一般情況下檔案不是很大的情況下整體讀取速度比較快 檔案很大的時候就不要用第一種方式了,容易溢位。 另外還可以用緩衝流讀取 BufferedInputStream 一次讀取一行效率比 FileInputStream 要高
相關推薦
java檔案讀寫耗時比較
public class ImageSaveServiceImpl implements ImageSaveService { /** * 圖片讀取(一次性讀取) * @param imgPath * @return */ @Override p
Java檔案讀寫IO/NIO及效能比較總結
幹Java這麼久,一直在做WEB相關的專案,一些基礎類差不多都已經忘記。經常想得撿起,但總是因為一些原因,不能如願。 其實不是沒有時間,只是有些時候疲於總結,今得空,下定決心將丟掉的都給撿起來。 檔案讀寫是一個在專案中經常遇到的工作,有些時候是因為維護,有些時候是新功能開發
java檔案讀寫詳細介紹
主要針對java中檔案的概念以及一些用法 ·java中檔案讀寫操作基於流這個概念 流各種方法存在於java.io包中檔案是資料流中最常用的一.檔案的相關方法歸類:建立:File 物件名=new File("檔名");讀取:·File 物件名=new File("檔案路徑"); &nb
java檔案讀寫I/O
寫和讀檔案: import java.io.*; public class fileStreamTest2{ public static void main(String[
java檔案讀寫,
/** * */ package com.struts2.other; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.F
Java檔案讀寫操作
程式碼 package fileOperation; import java.io.BufferedReader; import java.io.BufferedWriter; import ja
Java 檔案讀寫簡單例項
import java.io.*; public class ReadWrite { public void writeFile() { String str = "this is a p
Java檔案讀寫操作(FileInputStream、FileReader、BufferedReader)
1.位元組流和字元流選擇 位元組流:位元組流讀取的時候,讀到一個位元組就返回一個位元組; 主要用於讀取圖片,MP3,AVI視訊檔案。 字元流:字元流使用了位元組流讀到一個或多個位元組,如讀取中文時,就會一次讀取2個位元組。只要是處理純文字資料,就要優先考慮
Java檔案讀寫—utf-8格式
Windows預設檔案格式為UTF8格式,之前我們做過一個檔案讀寫,但寫入檔案的方式是二進位制格式,接下來,我們以windows預設的utf-8格式讀寫檔案。 IOStream類 package c
轉!JAVA檔案讀寫操作
file(記憶體)—-輸入流—->【程式】—-輸出流—->file(記憶體) 當我們讀寫文字檔案的時候,採用Reader是非常方便的,比如FileReader,InputStreamReader和BufferedReader。其中最重要的類是InputStreamReader, 它是位元組轉
Java 之 檔案讀寫及效能比較總結
Java 之 檔案讀寫及效能比較總結 2014年05月12日 17:56:49 閱讀數:21765 幹Java這麼久,一直在做WEB相關的專案,一些基礎類差不多都已經忘記。經常想得撿起,但總是因為一些原因,不能如願。 其實不是沒有時間,只是有些時候疲於總結,今得空,下定決心
沉澱再出發:java的檔案讀寫
沉澱再出發:java的檔案讀寫 一、前言 對於java的檔案讀寫是我們必須使用的一項基本技能,因此瞭解其中的原理,位元組流和字元流的本質有著重要的意義。 二、java中的I/O操作 2.1、檔案讀寫的本質 概念框架: 1 方式
java實現讀寫伺服器檔案
https://github.com/MAXIAODONGS/Remote-operation-of-static-resources 這個主要實現java遠端訪問伺服器的讀寫檔案操作,自動登入讀寫檔案,以上程式碼整理來自網際網路,然後自己將很多瑣碎的東西整理在了一起 pom.xml要配置
C# & JAVA:讀寫檔案
using System; using System.IO; using System.Text; namespace ConsoleApplication4 { class Program { public static void Read(string path) { FileS
Java學習——讀寫txt檔案
package HHH; import java.io.*; import static java.lang.System.out; public class OpenFile { public static void main(String[] args) {
Java對檔案讀寫管理工具
Java對檔案讀寫管理工具 import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import j
java大檔案讀寫操作,java nio 之MappedByteBuffer,高效檔案/記憶體對映
原文地址:https://www.cnblogs.com/lyftest/p/6564282.html java處理大檔案,一般用BufferedReader,BufferedInputStream這類帶緩衝的Io類,不過如果檔案超大的話,更快的方式是採用MappedByteB
java的IO流和檔案讀寫
IO流 IO流分類 按資料流向分:輸入流、輸出流 按資料型別分:位元組流(x xInputStream 讀,xxOutputStream寫)、字元流(xxRead讀,xxWrite寫) 如果資料所在的檔案通過windows自帶的記事本開啟並能
Java實現CSV檔案讀寫操作
wechat:812716131 ------------------------------------------------------ 技術交流群請聯絡上面wechat ----------------------------------------------
Java的檔案讀寫操作
file(記憶體)----輸入流---->【程式】----輸出流---->file(記憶體)當我們讀寫文字檔案的時候,採用Reader是非常方便的,比如FileReader,InputStreamReader和BufferedReader。其中最重要的類是Input