Эта статья в основном представляет использование потоков Java Inputstream.
(1) FileInputStream: подкласс, канал для чтения данных
Шаги для использования:
1. Получить целевой файл: new File ()
2. Создайте канал: New FileInputString ()
3. Прочтите данные: read ()
4. Ресурсы выпуска: Close ()
// некоторые пакеты, которые будут импортированы по умолчанию импорта java.io.file; импорт java.io.fileinputstream; импорт java.io.ioexception;
Public Static void Main (String [] args) бросает ioException {// todo автоматическое сгенерированное метод // Вызов методов для просмотра эффекта test1();System.out.println("------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(2) Три способа считывать данные
1. Читать напрямую (только один байт за раз)
int date = fileInputStream.read (); char date3 = (char) fileInputStream.read ();
//Print public static void test1() throws IOException{//(1) Get the target file path File file = new File("C://Users//joke//Desktop//Demo1.java");//(2) Create a channel based on the target file path: new FileInputStream(file)FileInputStream fileInputStream = new FileInputStream(file);//(3) Read DATA: read (); int date = fileInputStream.read (); // Здесь int type int date2 = fileInputStream.read (); // char date3 = (char) fileInputStream.read (); // show system.out.println (date+"//"+date2+"//"+date3); // (4) Отпустите ресурс FileInputStream.close ();}2. Использовать только для петель (эффективность INE)
for (int i = 0; i <file.length (); i ++) {System.out.print ((char) fileInputStream.read ()); } // Метод Traversal Traversal Public Static void Test2 () Throws IOException {// Тест эффективность через время long starttime = system.currenttimemillis (); file file = new File ("c: //users//joke//desktop//demo1.java"); fileInptreA 0;3.byte [] буфер (может прочитать только указанное количество байтов и не может прочитать полный файл)
байт [] bt = новый байт [1024]; int count = fileInputStream.read (bt); System.out.println (новая строка (Bt, 0, count));
// Метод 3 Создать буфер (может прочитать только указанный размер, а не прочитать полный файл) public static void test3 () Throws IOException {file file = new File ("c: //users//joke//desktop//demo1.java"); fileInputStream fileInpream = new FileInpream (файл); быть прочитав byte [] bt = new Byte [1024]; // read () read byte int count = fileInputStream.read (bt); System.out.println (count); // Показать количество байтов чтения System.out.println (New String (bt, 0, count)); // конвертировать байты в строку для отображения fileInputStream.close ();}4. Объединение буфера и петли. Буфер, как правило, устанавливается на кратное 1024. Чем больше набор буфера, тем выше эффективность чтения.
байт [] bt = новый байт [1024]; int count = 0; while ((count = fileinputstream.read (bt))! = -1) {System.out.println (new String (bt, 0, count)); } // Метод четыре петли объединяются с буфером (высокая эффективность) Public Static void Test4 () Throws IOException {// Эффективность теста с помощью времени long starttime = system.currenttimemillis (); file file = new File ("c: //users//joke//desktop//demo1.java") файл файл) файл файла); Буфер, как правило, устанавливается на множество 1024. Теоретически, чем больше набор буфера, тем выше байт эффективности чтения [] bt = new Byte [1024]; int count = 0; // Когда чтение возвращает -1, доказано, что пока отображение (count = fileInputStream.read (bt))! = -1) {////Стокольный тип (count -glins начинается с 0th -in bt -в 0 -й по 0 -й по 0 -й по 0 -й по 0 -й. System.out.println (new String (bt, 0, count));} fileInputStream.Close (); Long EndTime = System.CurrentTimeMillis (); System.out.println («Время, необходимое для чтения файла:»+(endtime-starttime));}Момо сказал:
В вышеперечисленном сравнении второго и четвертого методов вы обнаружите, что эффективность метода 4 относительно высока, поэтому используются четыре рекомендуемых метода
Здесь мы напрямую бросаем исключения, в дополнение к броскам, мы также можем использовать
try{ }cater{ }finally{ }
Чтобы справиться с исключениями
Выше приведено использование inputString (), входного потока Java IO -потока, введенного вам. Я надеюсь, что это будет полезно для вас. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит вам вовремя. Большое спасибо за вашу поддержку сайту wulin.com!