84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
Java-Dateioperation, wie füge ich Inhalte an einem bestimmten Ort ein (ersetze Inhalte nicht)?
光阴似箭催人老,日月如移越少年。
不存在真正意义上的插入文件,因为文件大小是确定的。所以只能用临时文件去替换源文件。
public void insert(String filename, long offset, byte[] content) { RandomAccessFile r = new RandomAccessFile(new File(filename), "rw"); RandomAccessFile rtemp = new RandomAccessFile(new File(filename + "~"), "rw"); long fileSize = r.length(); FileChannel sourceChannel = r.getChannel(); FileChannel targetChannel = rtemp.getChannel(); sourceChannel.transferTo(offset, (fileSize - offset), targetChannel); sourceChannel.truncate(offset); r.seek(offset); r.write(content); long newOffset = r.getFilePointer(); targetChannel.position(0L); sourceChannel.transferFrom(targetChannel, newOffset, (fileSize - offset)); sourceChannel.close(); targetChannel.close(); }
https://stackoverflow.com/que...
你参考下这个:
https://faceghost.com/questio...
不存在真正意义上的插入文件,因为文件大小是确定的。所以只能用临时文件去替换源文件。
https://stackoverflow.com/que...
你参考下这个:
https://faceghost.com/questio...