ASK     CORE     ALF     EXT     DOCS     NIO             IO vs NIO   Tuto     docs-Class File    

---------------------------------------------------------------------------------------

        //     1.   Подстраницы
        //     2.   .flush()
        //     3.   Символ и байт
        //     4.   Эволюция Java на примере чтения строк из файла
        //     5.   file to byte Array
        //     8.   History
        //     9.   Lesen

---------------------------------------------------------------------------------------

        //     1.   Подстраницы

Scanner :   Scanner    
I/O :   Package java.io (docs)     I/O     I/O Lesen    
NIO :   java.nio.file     --java.nio.file--    
        Interfaces :   Path    
        Streams :   Package     Interface Stream<T>    
        Classes :   Files     Paths                             //     Files wie class Collections
        Methods :   Files.walkFileTree()     4 Methods     BasicFileAttributes    

Путь :   Путь     Слэш     Separator    
File :   Проверка File вместе c созданием     Создание File     File     Удаление File     Temp File    
Directory :   Directory    
RandomAccessFile             RandomAccessFile    

Close    

File
File...Stream                         FileInputStream                                   FileOutputStream    
FileReader/Writer                 FileReader                                             FileWriter    
Zip                                         ZipInputStream                                     ZipOutputStream             ZipEntry    

Stream                                   InputStream                                         OutputStream    
        ByteArray...                           ByteArrayInputStream                         ByteArrayOutputStream    
        File...                                       FileInputStream                                   FileOutputStream    
        Filter...                                   FilterInputStream                                   FilterOutputStream    
                Buffered...                             BufferedInputStream                             BufferedOutputStream
                Data...                                   DataInputStream                                     DataOutputStream    
                Print...                                   PrintStream    
        Object...                               ObjectInputStream                                 ObjectOutputStream    
        Piped...        
        Sequence...                         SequenceInputStream    
        Pushback...                         PushbackInputStream    


Reader/Writer                       Reader                                                   Writer    
        Buffered...                           BufferedReader                                   BufferedWriter    
        Input/Output-Stream...       InputStreamReader                             OutputStreamWriter
                File-Reader/Writer       FileReader                                           FileWriter
        PrintWriter...                                                                                       PrintWriter    
        String...                               StringReader                                         StringWriter    
        PipedWriter...
                                                    Reader-Trick    

------------------------------------------------------------------------------------

        //     2.   .flush()

.flush()   --   Чтобы последний кусок из стрима тоже дописался

final OutputStream output = new FileOutputStream(excel);
...
output.flush();
output.close();

---------------------------------------------------------------------------------------

        //     3.   Символ и байт

Для вывода текста используется посимвольный вывод, для вывода двоичных файлов используется побайтный

Для Java разница между символом и байтом очень важна — т.к.
Java расчитана на будущее, то для символа в ней используется два байта, а не один как это было в ранних языка С или Паскаль. Именно для разделения типов потоков ввода/вывода используются разные классы.
Reader/Writer — чтение/запись символов
InputStream/OutputStream — чтение/запись байтов

---------------------------------------------------------------------------------------

        //     4.   Эволюция Java на примере чтения строк из файла

Эволюция Java на примере чтения строк из файла     Habr-269667

---------------------------------------------------------------------------------------

        //     5.   file to byte Array

byte[] byteArray = Files.readAllBytes(file.toPath());

---------------------------------------------------------------------------------------

        //     8.   History

NIO ( Java 4 )
NIO 2 ( Java 7 )   ???

---------------------------------------------------------------------------------------

        //     9.   Lesen

Конспект лекций по Java. Занятие 15     javable.com
NIO (Java, обучающая статья)     quizful.net