Java liest Binärdateien in Bytes und kann auch Bilder, Musikdateien, Videodateien usw. lesen. In Java stehen vier Kategorien zum Betreiben von Dateien zur Verfügung, nämlich InputStream, OutputStream, Reader und Writer. Die ersten beiden sind Operationen für Byteströme und die letzten beiden sind Operationen für Zeichenströme.
FileWriter kann Parameter nur in Form von Zeichenfolgen akzeptieren, was bedeutet, dass der Inhalt nur in Textdateien gespeichert werden kann. Im Vergleich zu Textdateien spart die Dateispeicherung im Binärformat mehr Platz.
InputStream wird verwendet, um Daten aus dem Eingabestream in Bytes zu lesen. Die Methode int read() liest ein Byte und gibt einen Wert zwischen 0 und 255 in Form einer Ganzzahl zurück. Warum ein Byte lesen, anstatt direkt einen Bytetypwert zurückzugeben?
Da das höchste Bit des Bytetyps das Vorzeichenbit ist, ist die größte positive Ganzzahl, die es darstellen kann, 127.
InputStream ist nur eine abstrakte Klasse und kann nicht instanziiert werden. FilelnputStream ist eine Unterklasse von InputStream und wird zum Lesen von Bytes aus einer Datei verwendet.
public static void main(String[] args) throws IOException { String filePath = "d:/test.txt"; File file = new File (filePath); //根据文件路径创建一个文件对象 //如果找不到文件,会抛出FileNotFoundException异常 FilelnputStream filelnput = new FilelnputStream(file); } filelnput.close (); //关闭文件输入流,如果无法正常关闭,会抛出IOException异常
Die Methode write(int b) in OutputStream wird verwendet, um Daten byteweise auszuschreiben. FileOutputStream wird verwendet, um Daten in Bytes in eine Datei zu schreiben. Beispielsweise besteht die Dateikopierfunktion darin, den Inhalt einer Datei byteweise zu lesen und in eine andere neue Datei zu schreiben.
File fileln = new File ("source. txt"); //打开源文件 File fileOut = new File ("target.txt”); //打开写入文件,也就是目标文件 FilelnputStream streamln = new FilelnputStream (fileln); //根据源文件构建输入流 FileOutputStream streamOut = new FileOutputStream (fileOut); //根据目标文件构建输出流 int c; //从源文件中按字节读入数据,如果内容还没读完,则继续 while ((c = streamln.read()) != -1) { streamOut .write (c); //写入目标文件 } streamln.close。; //关闭输入流 streamOut.close(); //关闭输出流
Stellen Sie fest, ob die Datei bereits vorhanden ist, und generieren Sie die Datei, wenn sie nicht vorhanden ist.
File dataFile = new File(dicDir + dataDic); if (!dataFile.exists()) { //如果文件不存在则写入文件 }
Verwenden Sie die Methode File.mkdirs(), um mehrstufige Verzeichnisse zu erstellen. Wenn beispielsweise ein Verzeichnis nicht vorhanden ist, erstellen Sie es.
File tempDir = new File(imgPath); if(!tempDir.exists()){ tempDir.mkdirs(); }
Viele Java-Schulungsvideos, alle auf der chinesischen PHP-Website, willkommen zum Online-Lernen!
Das obige ist der detaillierte Inhalt vonSo öffnen Sie eine Binärdatei in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!