Day23

Day23

一,file类

1.1file类的初识

import java.io.File;
import java.text.SimpleDateFormat;public class Test01 {/*** 知识点:File类* File,是文件和目录路径名的抽象表示* File只关注文件本身的信息,而不能操作文件里面的内容* * File类 -- 表示文件或文件夹,不能对文件里的数据进行操作* 对文件里的数据进行操作的是:IO流* * 需求1:通过程序,获取已知文件的以下信息*/public static void main(String[] args) {//创建File对象File file = new File("C:\\Users\\何小宝\\Desktop\\hhy.txt");System.out.println("获取文件名:" + file.getName());System.out.println("获取绝对路径:" + file.getAbsolutePath());System.out.println("获取文件大小(字节):" + file.length());System.out.println("获取文件是否可读:" + file.canRead());System.out.println("获取文件是否可写:" + file.canWrite());System.out.println("获取文件是否隐藏:" + file.isHidden());SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String datetime = sdf.format(file.lastModified());System.out.println("获取最后的修改时间:" + datetime);}
}

1.2获取绝对路径与相对路径

import java.io.File;public class Test02 {/*** 知识点:相对路径 和 绝对路径* * 绝对路径:在计算机内的具体路径(盘符:\文件夹\文件夹\...)* 相对路径:相对于当前项目下的路径*/public static void main(String[] args) {//创建File对象File file = new File("hhy.txt");System.out.println("获取相对路径:" + file.getPath());System.out.println("获取绝对路径:" + file.getAbsolutePath());}
}

1.3创建文件

import java.io.File;
import java.io.IOException;public class Test01 {/*** 知识点:File类* * 需求2:通过程序,判断指定路径的文件是否存在,如果不存在,则创建该文件下面按各种情况来解决该问题1)目录已存在的情况* @throws IOException */public static void main(String[] args) throws IOException {File file = new File("file01\\hhy.txt");//文件不存在if(!file.exists()){//创建文件file.createNewFile();}}
}

1.4创建单级文件夹

import java.io.File;
import java.io.IOException;public class Test02 {/*** 知识点:File类* * 需求2:通过程序,判断指定路径的文件是否存在,如果不存在,则创建该文件下面按各种情况来解决该问题1)目录已存在的情况2)有一个层级的目录不存在的情况*/public static void main(String[] args) throws IOException {//D:\2308workspace\Day23\file01\hhy.txtFile file = new File("file01\\hhy.txt");//获取父路径 - D:\2308workspace\Day23\file01File parentFile = file.getParentFile();//判断目录路径是否存在if(!parentFile.exists()){//创建一层目录parentFile.mkdir();}//判断文件是否存在if(!file.exists()){//创建文件file.createNewFile();}}
}

1.5创建多级文件夹

import java.io.File;
import java.io.IOException;public class Test03 {/*** 知识点:File类* * 需求2:通过程序,判断指定路径的文件是否存在,如果不存在,则创建该文件下面按各种情况来解决该问题1)目录已存在的情况2)有一个层级的目录不存在的情况3)有多个层级的目录不存在的情况*/public static void main(String[] args) throws IOException {//D:\2308workspace\Day23\file01\file02\file03\hhy.txtFile file = new File("file01\\file02\\file03\\hhy.txt");//获取父路径 - D:\2308workspace\Day23\file01\file02\file03File parentFile = file.getParentFile();//判断目录路径是否存在if(!parentFile.exists()){//创建多层目录parentFile.mkdirs();}//判断文件是否存在if(!file.exists()){//创建文件file.createNewFile();}}
}

1.6输出指定文件夹下的所有信息

import java.io.File;
import java.text.SimpleDateFormat;public class Test01 {/*** 知识点:File类* * 需求3:输出指定目录下的所有文件信息*/public static void main(String[] args) {File file = new File("D:\\2023");//获取当前目录下所有的文件名,并返回数组
//		String[] list = file.list();
//		for (String str : list) {
//			System.out.println(str);
//		}//获取当前目录下所有的文件对象,并返回数组File[] listFiles = file.listFiles();SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");for (File f : listFiles) {System.out.println(f.getName() + " -- " + sdf.format(f.lastModified()));}}
}

1.7输出指定文件夹下指定后缀的文件信息

import java.io.File;public class Test02 {/*** 知识点:File类* * 需求3:输出指定目录下的所有文件信息* 		1)要求只输出文件后缀名为txt的文件*/public static void main(String[] args) {File file = new File("D:\\2023");//获取当前目录下所有的文件对象,并返回数组File[] listFiles = file.listFiles();for (File f : listFiles) {String name = f.getName();//判断f是文件对象 并且 后缀以.txt结尾if (f.isFile() && name.endsWith(".txt")) {System.out.println(name);}}}
}

1.8输出指定文件夹下指定后缀的文件信息并过滤

import java.io.File;public class Test04 {/*** 知识点:File类* * 需求3:输出指定目录下的所有文件信息* 		1)要求只输出文件后缀名为txt的文件* 		2)根据API的过滤器来完成该功能* 		3)需求继续跟进,列出当前目录及子目录中符合该条件的文件信息(递归)*/public static void main(String[] args) {File file = new File("D:\\2023");search(file, ".jpg");}public static void search(File file,String suffix){File[] listFiles = file.listFiles();for (File f : listFiles) {if(f.isDirectory()){//文件夹search(f, suffix);}else if(f.isFile()){//文件String name = f.getName();if(name.endsWith(suffix)){System.out.println(name + " -- " + f.getAbsolutePath());}}}}
}

1.9列出当前目录下与子目录下所有符合条件的文件信息

import java.io.File;public class Test04 {/*** 知识点:File类* * 需求3:输出指定目录下的所有文件信息* 		1)要求只输出文件后缀名为txt的文件* 		2)根据API的过滤器来完成该功能* 		3)需求继续跟进,列出当前目录及子目录中符合该条件的文件信息(递归)*/public static void main(String[] args) {File file = new File("D:\\2023");search(file, ".jpg");}public static void search(File file,String suffix){File[] listFiles = file.listFiles();for (File f : listFiles) {if(f.isDirectory()){//文件夹search(f, suffix);}else if(f.isFile()){//文件String name = f.getName();if(name.endsWith(suffix)){System.out.println(name + " -- " + f.getAbsolutePath());}}}}
}

二,IO流

1,字节流

1.1文件字节输出流

import java.io.FileOutputStream;
import java.io.IOException;public class Test01 {/*** 知识点:利用文件字节输出流 向文件写入数据* * 	1.文件存在的情况*/public static void main(String[] args) throws IOException {//1.创建流对象FileOutputStream fos = new FileOutputStream("io.txt");//2.写入数据//fos.write(97);//写入Unicode码//fos.write("123abcdef".getBytes());//写入字节数组fos.write("123abcdef".getBytes(), 3, 6);//写入字节数组,偏移量,写入长度//3.关闭资源fos.close();}
}
import java.io.FileOutputStream;
import java.io.IOException;public class Test02 {/*** 知识点:利用文件字节输出流 向文件写入数据* * 	1.文件存在的情况*  2.文件不存在的情况*  	经验:所有的输出流,当文件不存在时会创建文件*/public static void main(String[] args) throws IOException {//1.创建流对象//FileOutputStream fos = new FileOutputStream("io.txt");//1.创建流对象(在末尾追加内容)FileOutputStream fos = new FileOutputStream("io.txt",true);//2.写入数据fos.write("123abcdef".getBytes());//写入字节数组//3.关闭资源fos.close();	}
}
1.2文件字节输出流–处理异常
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;public class Test04 {/*** 知识点:利用文件字节输出流 向文件写入数据* * 	1.文件存在的情况*  2.文件不存在的情况*  	经验:所有的输出流,当文件不存在时会创建文件*  3.在文件末尾追加*  	经验:考虑基础流的构造方法*  4.处理异常*/public static void main(String[] args) {FileOutputStream fos = null;try {//1.创建流对象(在末尾追加内容)fos = new FileOutputStream("io.txt",true);//2.写入数据fos.write("123abcdef".getBytes());//写入字节数组} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {//3.关闭资源if(fos != null){try {fos.close();} catch (IOException e) {e.printStackTrace();}}}}
}
1.3文件字节输入流
import java.io.FileInputStream;
import java.io.IOException;public class Test05 {/*** 知识点:利用文件字节输入流 读取文件里的内容* * 1.文件存在的情况*/public static void main(String[] args) throws IOException {//1.创建流对象FileInputStream fis = new FileInputStream("io.txt");//2.读取数据//read():读取一个字节,如果读取到文件末尾则返回-1int read = fis.read();System.out.println((char)read);read = fis.read();System.out.println((char)read);read = fis.read();System.out.println((char)read);read = fis.read();System.out.println((char)read);read = fis.read();System.out.println((char)read);read = fis.read();System.out.println((char)read);read = fis.read();System.out.println(read);//3.关闭资源fis.close();	}
}
//循环读取
import java.io.FileInputStream;
import java.io.IOException;public class Test06 {/*** 知识点:利用文件字节输入流 读取文件里的内容* * 1.文件存在的情况*/public static void main(String[] args) throws IOException {//1.创建流对象FileInputStream fis = new FileInputStream("io.txt");//2.读取数据 - 一个字节一个字节的循环读取int read;while((read = fis.read()) != -1){System.out.println((char)read);}//3.关闭资源fis.close();}
}
import java.io.FileInputStream;
import java.io.IOException;public class Test07 {/*** 知识点:利用文件字节输入流 读取文件里的内容* * 1.文件存在的情况*/public static void main(String[] args) throws IOException {//1.创建流对象FileInputStream fis = new FileInputStream("io.txt");//2.读取数据 - 1024个字节1024个字节的循环读取//read(bs):每次读取bs长度的数据并把数据存入bs数组中,返回读取到的有效字节数,如果读取到文件末尾则返回-1byte[] bs = new byte[1024];//[49,50,51,97,98,99,0,0,0,0,0,0,0]int len;while((len = fis.read(bs)) != -1){System.out.println(new String(bs, 0, len));}//3.关闭资源fis.close();	}
}
1.4文件字节输入流–处理异常

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;public class Test08 {/*** 知识点:利用文件字节输入流 读取文件里的内容* * 1.文件存在的情况* 2.文件不存在的情况* 		经验:所有的输入流,当文件不存在时都会报错 -- FileNotFoundException* 3.处理异常*/public static void main(String[] args){FileInputStream fis = null;try {//1.创建流对象fis = new FileInputStream("io.txt");//2.读取数据byte[] bs = new byte[1024];int len;while((len = fis.read(bs)) != -1){System.out.println(new String(bs, 0, len));}} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {//3.关闭资源if(fis != null){try {fis.close();} catch (IOException e) {e.printStackTrace();}}}}
}
1.5拷贝文件
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;public class Copy02 {/*** 知识点:拷贝文件* * 思路:读取源文件,写入到目标文件*/public static void main(String[] args) {try(FileInputStream fis = new FileInputStream("水野朝阳.mp4");FileOutputStream fos = new FileOutputStream("copy.mp4");){byte[] bs = new byte[1024];int len;while((len = fis.read(bs)) != -1){fos.write(bs, 0, len);}} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} 	}
}
1.6带缓冲区的字节输出流与输出流—拷贝文件
import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;public class Test01 {/*** 知识点:利用带缓冲区的字节输出流向文件写入数据*/public static void main(String[] args) throws IOException {//1.创建流对象 -- 默认缓冲区大小8192//BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("io.txt"));//1.创建流对象 -- 自定义缓冲区大小1024*1024*5//BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("io.txt"), 1024*1024*5);//1.创建流对象 (在末尾追加)BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("io.txt",true));//2.写入数据 -- 将数据写入到缓冲区数组里bos.write("123abcdef".getBytes());//3.关闭资源bos.close();}
}
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;public class Test02 {/*** 知识点:利用带缓冲区的字节输入流 读取文件里的数据*/public static void main(String[] args) throws IOException {//1.创建流对象 -- 默认缓冲区大小8192//BufferedInputStream bis = new BufferedInputStream(new FileInputStream("io.txt"));//1.创建流对象 -- 自定义缓冲区大小2048BufferedInputStream bis = new BufferedInputStream(new FileInputStream("io.txt"),2048);//2.读取数据byte[] bs = new byte[1024];int len;while((len = bis.read(bs)) != -1){System.out.println(new String(bs, 0, len));}//3.关闭资源bis.close();}
}
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;public class Copy {/*** 知识点:拷贝文件* * 思路:读取源文件,写入到目标文件*/public static void main(String[] args) {BufferedInputStream bis = null;BufferedOutputStream bos = null;try {bis = new BufferedInputStream(new FileInputStream("水野朝阳.mp4"));bos = new BufferedOutputStream(new FileOutputStream("copy.mp4"));byte[] bs = new byte[1024];int len;while((len = bis.read(bs)) != -1){bos.write(bs, 0, len);}} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {if(bis != null){try {bis.close();} catch (IOException e) {e.printStackTrace();}}if(bos != null){try {bos.close();} catch (IOException e) {e.printStackTrace();}}}}
}

2,字符流

2.1字符输出转换流,字符输入转换流,拷贝文件
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;public class Test01 {/*** 知识点:利用字符输出转换流 向文件写入数据*/public static void main(String[] args) throws IOException {//1.创建流对象(使用默认的编码格式)//OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("io.txt"));//1.创建流对象(使用自定义的编码格式)-- 推荐//OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("io.txt"),"GBK");//1.创建流对象(使用自定义的编码格式)+ 文件末尾追加 -- 推荐OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("io.txt",true),"GBK");//2.写入数据//osw.write(97);//写入Unicode码//char[] cs = {'1','2','3','a','b','c','木','头','人'};//osw.write(cs);//写入字符数组//osw.write(cs, 3, 6);//写入字符数组,偏移量,写入长度//osw.write("123abc木头人");//写入字符串osw.write("123abc木头人", 3, 6);//写入字符串,偏移量,写入长度//3.关闭资源osw.close();}
}
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;public class Test03 {/*** 知识点:利用字符输入转换流 读取文件里的数据*/public static void main(String[] args) throws IOException {//1.创建流对象(使用自定义的编码格式) -- 推荐InputStreamReader isr = new InputStreamReader(new FileInputStream("io.txt"),"GBK");//2.读取数据char[] cs = new char[1024];int len;while((len = isr.read(cs)) != -1){System.out.println(new String(cs,0,len));}//3.关闭资源isr.close();}
}
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;public class Copy {/*** 知识点:拷贝文件*/public static void main(String[] args) throws UnsupportedEncodingException, IOException {InputStreamReader isr = new InputStreamReader(new FileInputStream("小说.txt"), "GBK");OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("copy.txt"), "GBK");char[] cs = new char[1024];int len;while((len = isr.read(cs)) != -1){osw.write(cs, 0, len);}isr.close();osw.close();}
}
2.2文件字符输出流,文件字符输入流,拷贝文件
import java.io.FileWriter;
import java.io.IOException;public class Test01 {/*** 知识点:利用文件字符输出流 向文件写入数据*/public static void main(String[] args) throws IOException {//1.创建流对象//FileWriter fw = new FileWriter("io.txt");//1.创建流对象 + 在文件末尾追加FileWriter fw = new FileWriter("io.txt",true);//2.写入数据fw.write("123abc木头人");//写入字符串//3.关闭资源fw.close();}
}
import java.io.FileReader;
import java.io.IOException;public class Test02 {/*** 知识点:利用文件字符输入流 读取文件里的数据*/public static void main(String[] args) throws IOException {//1.创建流对象FileReader fr = new FileReader("io.txt");//2.读取数据char[] cs = new char[1024];int len;while((len = fr.read(cs)) != -1){System.out.println(new String(cs, 0, len));}//3.关闭资源fr.close();}
}
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.UnsupportedEncodingException;public class Copy {/*** 知识点:拷贝文件*/public static void main(String[] args) throws UnsupportedEncodingException, IOException {FileReader fr = new FileReader("小说.txt");FileWriter fw = new FileWriter("copy.txt");char[] cs = new char[1024];int len;while((len = fr.read(cs)) != -1){fw.write(cs, 0, len);}fr.close();fw.close();}
}
2.3带缓冲区字符输出流,带缓冲区字符输入流,拷贝文件
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;public class Test01 {/*** 知识点:利用带缓冲区字符输出流 向文件写入数据*/public static void main(String[] args) throws IOException {//1.创建流对象(FileOutputStream -> OutputStreamWriter -> BufferedWriter)//BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream("io.txt"), "GBK"));//1.创建流对象(FileWriter -> BufferedWriter)BufferedWriter bw = new BufferedWriter(new FileWriter("io.txt",true));//2.写入数据bw.write("123abc木头人");//写入字符串//3.关闭资源bw.close();}
}
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;public class Test02 {/*** 知识点:利用带缓冲区字符输出流 读取文件里的数据*/public static void main(String[] args) throws IOException {//1.创建流对象(FileInputStream -> InputStreamReader -> BufferedReader)BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("io.txt"), "GBK"));//2.读取数据char[] cs = new char[1024];int len;while((len = br.read(cs)) != -1){System.out.println(new String(cs, 0, len));}//3.关闭资源br.close();}
}
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.UnsupportedEncodingException;public class Copy01 {/*** 知识点:拷贝文件*/public static void main(String[] args) throws UnsupportedEncodingException, IOException {BufferedReader br = new BufferedReader(new FileReader("小说.txt"));BufferedWriter bw = new BufferedWriter(new FileWriter("copy.txt"));char[] cs = new char[1024];int len;while((len = br.read(cs)) != -1){bw.write(cs, 0, len);}br.close();bw.close();}
}
//逐行拷贝
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.UnsupportedEncodingException;public class Copy02 {/*** 知识点:拷贝文件*/public static void main(String[] args) throws UnsupportedEncodingException, IOException {BufferedReader br = new BufferedReader(new FileReader("小说.txt"));BufferedWriter bw = new BufferedWriter(new FileWriter("copy.txt"));String readLine;while((readLine = br.readLine()) != null){bw.write(readLine);bw.newLine();//换行}br.close();bw.close();}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/593853.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AIGC时代-GPT-4和DALL·E 3的结合

在当今这个快速发展的数字时代,人工智能(AI)已经成为了我们生活中不可或缺的一部分。从简单的自动化任务到复杂的决策制定,AI的应用范围日益扩大。而在这个广阔的领域中,有两个特别引人注目的名字:GPT-4和D…

webpack 5 mode的作用和区别

通过选择 development, production 或 none 之中的一个,来设置 mode 参数,你可以启用 webpack 内置在相应环境下的优化。其默认值为 production。 会将 DefinePlugin 中 process.env.NODE_ENV 的值设置为 developmen或者production. 为模块和 chunk 启用…

JUC原子操作类

原子操作类 基本类型原子类:AtomicInteger、AtomicBoolean、AtomicLong,常见API: get 获取当前值getAndSet 获取当前的值,并设置新的值getAndIncrement 获取当前的值,并自增getAndDecrement 获取当前的值,并…

洗地机怎么选?哪款洗地机好用?

选择洗地机前,我们需要对自己购买洗地机的需求做一个清洗的判断,吸尘器和扫地机智能解决地面基本的清洁问题,作为新兴的清洁工具洗地机越来越受大家的喜欢,洗地机的品类很多,洗地机到底该买哪款呢?我们先来看看挑选洗…

【现代控制理论】浙江大学 王建全教授

博主主页还有其他上万字精品笔记,欢迎自取 ​编辑P1[1.1.1]--视频:绪论.mp4_高清 1080P 11:19 这个视频是浙江大学的一门精品课程,主要介绍了现代控制理论的基本概念和发展历程。课程包括非线性系统理论、随机控制理论、自适应控制、模糊控制、鲁棒控制…

死锁-第三十四天

目录 什么是死锁 进程死锁、饥饿、死循环的区别 死锁产生的必要条件 什么时候会发生死锁 死锁的处理策略 本节思维导图 什么是死锁 每一个人都占有一个资源,同时又在等待另一个人手里的资源 进程死锁、饥饿、死循环的区别 死锁:各进程互相等待对…

drf序列化与序列化器的使用

序列化类的使用 使用序列化类实现五个接口功能,但是我们发现并没有做数据校验,也没有做反序列化,是我们自己手动去进反序列化,是我们自己使用for来进行拼接的,很不方便,我们可以使用一个drf自带的名叫序列…

ASP.Net实现海鲜添加(三层架构,异常处理)

演示功能: 点击启动生成页面 点击添加跳转新界面 此处设置文本框多行 点击Button添加 步骤: 1、建文件 下图是三层架构列表,Models里面有模拟数据库中列的类,DAL中有DBHelper和service,BLL中有BllManager文件用于ui界面直接调用…

SpringBoot之多环境开发配置

1 多环境开发配置 问题导入 在实际开发中,项目的开发环境、测试环境、生产环境的配置信息是否会一致?如何快速切换? 1.1 多环境启动配置 yaml文件多环境启动 不同环境使用—隔开 示例代码: spring:profiles:active: dev#生产…

易天推出10G SFP+ 可调 DWDM光模块:网络通信新升级

随着网络技术的飞速发展,为了满足用户对高速数据传输日益增长的需求。易天研发团队在原来的基础上推出了全新升级的10G SFP 可调 DWDM光模块,本文将详细介绍这款新升级光模块的特点、优势以及应用场景。 易天光通信10G SFP 可调 DWDM光模块具有出色的波…

三、C#面向对象编程(继承与多态)

在C#中,面向对象编程(OOP)是编程的基本范式,它使用类和对象的概念来构建软件应用程序。面向对象编程的三个主要特性是封装、继承和多态。 封装:封装是将数据(属性)和操作数据的函数(…

大数据学习(31)-Spark非常用及重要特性

&&大数据学习&& 🔥系列专栏: 👑哲学语录: 承认自己的无知,乃是开启智慧的大门 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言📝支持一下博主哦&#x1f91…

项目中接入神策埋点

项目中接入神策埋点(免费),react和vue通用 1、下包 使用npm 或 yarn 或 pnpm 安装依赖 npm install --save sa-sdk-javascript 2、初始化准备: 定义环境变量 VITE_PROJECT_ENV (prod demo test) 3、初始化神策 在 utils 文…

QT基础知识

QT基础知识 文章目录 QT基础知识1、QT是什么2、Qt的发展史3、为什么学习QT4、怎么学习QT1、工程的创建(环境的下载与安装请百度)2、创建的工程结构说明3、怎么看帮助文档1、类使用的相关介绍2. 查看所用部件(类)的相应成员函数(功…

为什么说 $mash 是 Solana 上最正统的铭文通证?

早在 2023 年的 11 月,包括 Solana、Avalanche、Polygon、Arbitrum、zkSync 等生态正在承接比特币铭文生态外溢的价值。当然,因铭文赛道过于火爆,当 Avalanche、BNB Chain 以及 Polygon 等链上 Gas 飙升至极值,Arbitrum、zkSync 等…

多任务并行处理相关面试题

我自己面试时被问过两次多任务并行相关的问题: 假设现在有10个任务,要求同时处理,并且必须所有任务全部完成才返回结果 这个面试题的难点是: 既然要同时处理,那么肯定要用多线程。怎么设计多线程同时处理任务呢&…

.babky勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复

导言: 网络安全威胁不断进化,其中.babky勒索病毒引起了广泛关注。这篇文章91数据恢复将深入介绍.babky的狡猾特征,以及在遭受其袭击时如何高效地恢复被加密的数据,并提供实用的预防方法。当面对被勒索病毒攻击导致的数据文件加密…

基于Java课程作业管理系统

基于Java课程作业管理系统 功能需求 1、作业发布:系统需要支持教师发布作业,包括作业题目、要求、截止日期等信息。 2、作业提交:学生可以通过系统提交作业,系统需要支持多种文件格式的上传,并能够自动保存提交记录…

vue-vuex持久化处理

在src/utils文件夹下,创建storage.js文件 // 约定一个通用的键名 const INFO_KEY hm_shopping_info// 获取个人信息 export const getInfo () > {const defaultObj { token: , userId: }const result localStorage.getItem(INFO_KEY)return result ? JSON…

proteus元器件搜索

proteus元器件搜索 常用元器件类 电阻:Resistor 可变电阻:Variable Resistor 电位器 :potentiometer 三极管:在Transistors里查找,可以用指定的型号搜索,比如2N3904。也可使用npn和pnp查找。 二极管&…