Get the App
SLTechnology News&Howtos  ›  Development  › 

How to copy a file through the JAVA NIO indirect buffer

Shulou Source: shulou.com Published: 2022-06-01 02:09:56 10月06日 Update

Editor to share with you how to copy files through the JAVA NIO indirect buffer, I believe most people do not know much about it, so share this article for your reference, I hope you can learn a lot after reading this article, let's go to know it!

Copy files through the JAVA NIO indirect buffer

/ * copy files through JAVA NIO indirect buffer * * @ param sourcePath source file path * @ param targetPath destination file path * / public static void copyFileByChannel (String sourcePath, String targetPath) {FileChannel outChannel = null; FileChannel inChannel = null; FileInputStream fis = null; FileOutputStream fos = null; try {fis = new FileInputStream (sourcePath); fos = new FileOutputStream (targetPath) / / get channel inChannel = fis.getChannel (); outChannel = fos.getChannel (); / / allocate buffer of specified size ByteBuffer buf = ByteBuffer.allocate (1024); while (inChannel.read (buf)! =-1) {/ / convert to read data mode buf.flip (); / / write to disk outChannel.write (buf) / / clear the buffer buf.clear ();}} catch (Exception e) {e.printStackTrace ();} finally {/ / close the stream try {if (outChannel! = null) {outChannel.close ();} if (inChannel! = null) {inChannel.close () } if (fis! = null) {fis.close ();} if (fos! = null) {fos.close ();}} catch (IOException e) {e.printStackTrace ();} these are all the contents of the article "how to copy files through the JAVA NIO indirect buffer". Thank you for reading! I believe we all have a certain understanding, hope to share the content to help you, if you want to learn more knowledge, welcome to follow the industry information channel!

Tags: Buffer buffer file copy article content path not much size most data more mode source file target knowledge disk industry information information channel Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno macOS MariaDB OPPO Reno Xiaomi Docker