您的位置:首页 > 科技 > IT业 > 装修公司走心文案_百度竞价排名是什么意思_线上销售水果营销方案_百度竞价关键词优化

装修公司走心文案_百度竞价排名是什么意思_线上销售水果营销方案_百度竞价关键词优化

2024/11/15 10:36:25 来源:https://blog.csdn.net/fieldsss/article/details/142690636  浏览:    关键词:装修公司走心文案_百度竞价排名是什么意思_线上销售水果营销方案_百度竞价关键词优化
装修公司走心文案_百度竞价排名是什么意思_线上销售水果营销方案_百度竞价关键词优化

一、File、IO流

File是java.io.包下的类,file类的对象,用于代表当前操作系统的文件(可以代表文件、文件夹),使用File可以操作文件及文件夹。

注意:File只能对文件本身进行操作,不能读写文件里的数据。

IO流是用于读写数据的。(读写文件、网络中的数据)

1.1认识File类

//目标:创建File对象代表文件(文件/目录),获取文件,目录信息
public class FileDemo1 {public static void main(String[] args) throws IOException {//1.创建file对象,去代表某个文件File f1 = new File("D:\\JavaCode\\JavaLearnDay01\\day11_FileAnd_IO\\1.png");System.out.println(f1.length()); // 获取字节个数System.out.println(f1.getAbsolutePath());//2.可以使用相对路径定位文件对象:只要带盘符的都是绝对路径//相对路径:不带盘符,默认是在idea工程下去找文件File f2 = new File("day11_FileAnd_IO\\src\\kfc.txt");System.out.println(f2.length());//File也可以新建文件File f3 = new File("D:\\JavaCode\\JavaLearnDay01\\day11_FileAnd_IO\\2.txt");System.out.println(f3.exists());//判断文件是否存在System.out.println(f3.createNewFile());//把这个文件创建出来//File新建文件夹 只能创建一级文件夹File f4 = new File("day11_FileAnd_IO\\src\\kkk");System.out.println(f4.mkdir());//mkdirs可以创建多级文件//创建对象代表存在的文件,然后删除它File f5 = new File("D:\\JavaCode\\JavaLearnDay01\\day11_FileAnd_IO\\1.txt");System.out.println(f5.delete());//获取某个目录下全部一级文件名称File f6 = new File("D:\\JavaCode\\JavaLearnDay01");String[] names = f6.list();
//        for (String name : names) {
//            System.out.println(name);
//        }File[] files = f6.listFiles();for(File file : files) {System.out.println(file.getName());}}
}

1.2 方法递归、文件搜索

import java.io.File;
//需求,想找到d盘里有没有kfc.txt
//使用递归搜索
public class FileDemo2 {public static void main(String[] args) {File f = new File("D://JavaCode");search(f, "kfc.txt");}public static void search(File dir, String name) {//1。判断极端情况if (dir == null || !dir.exists() || !dir.isDirectory()) {return;}//2.获取该目录下所有的一级文件或文件夹对象File[] files = dir.listFiles();//3.判断当前目录下是否存在一级文件对象,存在才能继续遍历if (files != null && files.length > 0) {for (File file : files) {//开始遍历if (file.isFile()) {//遍历到文件了,判断是否是kfc.txtif (file.getName().equals(name)) {System.out.println("找到目标文件" + file.getAbsolutePath());}}else{search(file, name);//不是文件,则继续遍历}}}}
}

二、字符集

学习IO流读写数据的前置知识,了解数据在底层是如何存储的

2.1字符集的编码,解码操作

import java.io.IOException;
import java.util.Arrays;//写程序实现字符的编码与解码
public class CharSet1 {public static void main(String[] args) throws IOException {//1.编码String name = "疯狂星期四KFCvivo50!";byte[] bytes = name.getBytes("GBK"); //指定字符集,java默认是utf-8System.out.println(Arrays.toString(bytes));System.out.println(bytes.length);//2.解码String decode = new String(bytes, "GBK");System.out.println(decode);}
}

三、IO流

3.1认识IO流

I指的是input,负责把数据从内存(程序)输入到磁盘、网络中去,O则相反,指的是把数据数出来。

四大金刚本身是抽象类,要使用他们的实现类来做功能

3.2文件字节输入流

作用:把磁盘文件中的数据,以字节的形式读入到内存中去。

//目标:读取字节数据
public class FileInputStream1 {public static void main(String[] args) throws IOException {//1.创建文件字节输入流管道,与文件接通InputStream irs = new FileInputStream("day11_FileAnd_IO\\2.txt");//2.读取文件中的字节并输出:每次读取一个字节//定义一个变量来记住每次读取的一个字节
//        int b ;
//        while((b = irs.read()) != -1){
//            System.out.println((char)b);
//        }//每次只读取一个字节的问题:性能较差,并且读取汉字输出一定会乱码//3.定义一个字节数组,用于每次读取字节,
//        byte[] buffer = new byte[2]; // 代表每次读几个字节
//        //定义一个变量,用来记住每次读了多少个字节
//        int len;
//        while ((len = irs.read(buffer)) != -1) {
//            //把读取的字节转换成字符串输出
//            String s = new String(buffer,0,len);//读取多少,输出多少,0表示从第一个位置开始,len代表倒多少个
//            System.out.println(s);
//
//        }
//        //每次读取多个字节,可以提升性能,但依然无法避免读取汉字输出乱码的问题。存在截断汉字字节的可能性//java提供了一次性读完全部字节的方法:public byte[] readAllBytes(),可以直接把文件的全部字节读取到一个数组中返回byte[] all = irs.readAllBytes();String s2 = new String(all);System.out.println(s2);}
}

3.3文件字节输出流

//目标:学会文件字节输出流
public class FileOutputStream01 {public static void main(String[] args) throws IOException {//1.创建文件字节输出流管道与目标文件接通OutputStream os = new FileOutputStream("day11_FileAnd_IO\\out.txt");//2.写入字节os.write(97);os.write("\r\n".getBytes());//换行,这是固定搭配os.write('a');
//        os.write('我'); 会乱码byte[] bytes= {97,96,98};os.write(bytes); // 写入一个字节数组os.close();//用完之后,要关闭}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com