在java编程中,java编译器会将java程序转换为

在java编程中,java编译器会将java程序转换为,第1张

转化为字节码。

一般java文件编译过后会成为class文件,这个class文件就是字节码。

ava是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。

import java.io.File\x0d\x0a\x0d\x0aimport java.io.FileInputStream\x0d\x0a\x0d\x0aimport java.io.IOException\x0d\x0a\x0d\x0aimport java.io.InputStream\x0d\x0a\x0d\x0apublic class Test {\x0d\x0a\x0d\x0apublic static void main(String[] args) {\x0d\x0a\x0d\x0a // TODO Auto-generated method stub\x0d\x0a\x0d\x0a try{\x0d\x0a\x0d\x0a getBytesFromFile(new File("C:\\aaa.txt"))\x0d\x0a\x0d\x0a }catch(IOException e){\x0d\x0a\x0d\x0a System.out.println("IOException")\x0d\x0a\x0d\x0a }\x0d\x0a\x0d\x0a}\x0d\x0a\x0d\x0a// 返回一个byte数组\x0d\x0a\x0d\x0apublic static byte[] getBytesFromFile(File file) throws IOException {\x0d\x0a\x0d\x0aInputStream is = new FileInputStream(file)\x0d\x0a\x0d\x0a// 获取文件大小\x0d\x0a\x0d\x0along length = file.length()\x0d\x0a\x0d\x0aif (length >Integer.MAX_VALUE) {\x0d\x0a\x0d\x0a// 文件太大,无法读取\x0d\x0a\x0d\x0athrow new IOException("File is to large "+file.getName())\x0d\x0a\x0d\x0a}\x0d\x0a\x0d\x0a// 创建一个数据来保存文件数据\x0d\x0a\x0d\x0abyte[] bytes = new byte[(int)length]\x0d\x0a\x0d\x0a// 读取数据到byte数组中\x0d\x0a\x0d\x0aint offset = 0\x0d\x0a\x0d\x0aint numRead = 0\x0d\x0a\x0d\x0awhile (offset = 0) {\x0d\x0a\x0d\x0aoffset += numRead\x0d\x0a\x0d\x0a}\x0d\x0a\x0d\x0a// 确保所有数据均被读取\x0d\x0a\x0d\x0aif (offset 回答于 2022-11-16

java将文件转换为byte数组,主要是使用输出流,实例如下:

/** 

     * 根据byte数组,生成文件 

     */  

    public static void getFile(byte[] bfile, String filePath,String fileName) {  

        BufferedOutputStream bos = null  //新建一个输出流

        FileOutputStream fos = null  //w文件包装输出流

        File file = null  

        try {  

            File dir = new File(filePath)  

            if(!dir.exists()&&dir.isDirectory()){//判断文件目录是否存在  

                dir.mkdirs()  

            }  

            file = new File(filePath+"\\"+fileName)  //新建一个file类

            fos = new FileOutputStream(file)  

            bos = new BufferedOutputStream(fos)  //输出的byte文件

            bos.write(bfile)  

        } catch (Exception e) {  

            e.printStackTrace()  

        } finally {  

            if (bos != null) {  

                try {  

                    bos.close()  //关闭资源

                } catch (IOException e1) {  

                    e1.printStackTrace()  

                }  

            }  

            if (fos != null) {  

                try {  

                    fos.close()  //关闭资源

                } catch (IOException e1) {  

                    e1.printStackTrace()  

                }  

            }  

        }  

    }


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/tougao/11900047.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存