当前位置: 首页 > news >正文

建设外贸购物网站外贸cms什么意思

建设外贸购物网站,外贸cms什么意思,寺庙网站模板,有哪些做短租的网站好目录 一、文件1.1 文件的概念1.2 文件的操作1.3 路径1.4 文件分类 二、Java中的文件元信息、路径操作2.1 属性2.2 构造方法2.3 方法2.3.1 文件路径2.3.2 文件判断2.3.3 文件创建删除2.3.4 其他操作 三、文件读写操作3.1 流#xff08;Stream#xff09;3.1.1 字节流3.1.1.1 I… 目录 一、文件1.1 文件的概念1.2 文件的操作1.3 路径1.4 文件分类 二、Java中的文件元信息、路径操作2.1 属性2.2 构造方法2.3 方法2.3.1 文件路径2.3.2 文件判断2.3.3 文件创建删除2.3.4 其他操作 三、文件读写操作3.1 流Stream3.1.1 字节流3.1.1.1 InputStream3.1.1.2 OutputStream 3.1.2 字符流3.1.2.1 Reader3.1.2.2 Writer 3.2 字节流字符流转换 四、自定义快读类4.1 自定义快速读入4.2 自定义快速输出 一、文件 1.1 文件的概念 在操作系统中会将“硬盘设备”和“软件资源”都抽象成文件。 在生活中提到的文件大多指硬盘的文件像c盘里面的文件就是硬盘上的数据抽象而成的。 1.2 文件的操作 在计算机上文件是由操作系统提供的“文件系统”来组织管理的操作系统使用“目录”也就是常说的文件夹来管理文件的。目录是一种树形结构 1.3 路径 绝对路径就是以C盘D盘C: D:这种盘符开头的路径。如E:\植物大战僵尸。相对路径此时需要先指定一个基准目录然后看通过什么样的路径来到指定文件这个路径就是相对路径用点开头。此时用一个点表示当前目录两个点表示当前目录上一级目录。 举例 假如我们要找“E:\植物大战僵尸\pvzHE目录下的fonts文件。 如果我们当前在“E:\植物大战僵尸\pvzHE目录下直接使用“.\fonts”如果我们在“E:\植物大战僵尸”目录下使用“.\pvzHE\fonts”如果我们在E:\植物大战僵尸\pvzHE\新建文件夹目录下使用“…\fonts” 不同场景下的基准目录 在命令行操作当前目录就是基准目录。在idea操作项目目录就是基准目录。在图形化工具上就要看实际情况了。 1.4 文件分类 在编程角度上将文件分为两类 文本文件文件中保存的都是字符串保存的都是合法的字符合法的字符就是符合当前字符集编码的字符。二进制文件文件中保存的仅仅是二进制数据。 二、Java中的文件元信息、路径操作 Java 中通过 java.io.File 类来对一个文件包括目录进行抽象的描述。 2.1 属性 修饰符及类型属性说明static StringpathSeparator依赖于系统的路径分隔符String 类型的表示static charpathSeparator依赖于系统的路径分隔符char 类型的表示 2.2 构造方法 签名说明File(File parent, String child)根据父目录 孩子文件路径创建一个新的 File 实例File(String pathname)根据文件路径创建一个新的 File 实例路径可以是绝对路径或者相对路径File(String parent, String child)根据父目录 孩子文件路径创建一个新的 File 实例父目录用路径表示 2.3 方法 2.3.1 文件路径 修饰符及返回值类型方法签名说明StringgetParent()返回 File 对象的父目录文件路径StringgetName()返回 FIle 对象的纯文件名称StringgetPath()返回 File 对象的文件路径StringgetAbsolutePath()返回 File 对象的绝对路径StringgetCanonicalPath()返回 File 对象的修饰过的绝对路径 2.3.2 文件判断 修饰符及返回值类型方法签名说明booleanexists()判断 File 对象描述的文件是否真实存在booleanisDirectory()判断 File 对象代表的文件是否是一个目录booleanisFile()判断 File 对象代表的文件是否是一个普通文件booleancanRead()判断用户是否对文件有可读权限booleancanWrite()判断用户是否对文件有可写权限 2.3.3 文件创建删除 修饰符及返回值类型方法签名说明booleancreateNewFile()根据 File 对象自动创建一个空文件。成功创建后返回 truebooleandelete()根据 File 对象删除该文件。成功删除后返回 truevoiddeleteOnExit()根据 File 对象标注文件将被删除删除动作会到JVM 运行结束时才会进行 2.3.4 其他操作 修饰符及返回值类型方法签名说明String[ ]list()返回 File 对象代表的目录下的所有文件名File[ ]listFiles()返回 File 对象代表的目录下的所有文件以 File 对象表示booleanmkdir()创建 File 对象代表的目录booleanmkdirs()创建 File 对象代表的目录如果必要会创建中间目录booleanrenameTo(Filedest)进行文件改名也可以视为我们平时的剪切、粘贴操作 三、文件读写操作 在Java中对文件的读写操作使用流对象(stream) 3.1 流Stream 在标准库中提供的文件读写操作的类有很多但可以分为两类。 3.1.1 字节流 字节流对应着二进制文件每次读写的最小单位都是字节Byte。 字节流提供了两个父类InputStreamOutputStream来供继承。 3.1.1.1 InputStream InputStream在源码中是一个抽象类不能直接new对象。提供了一个子类FileInputStream。 类需要传文件路径如果文件没找到还会抛出FileNotFoundException异常。 方法简介 返回值方法签名说明intread()读取一个字节的数据返回 -1 代表已经完全读完了intread(byte[ ] b)最多读取 b.length 字节的数据到 b 中返回实际读到的数量-1 代表以及读完了intread(byte[ ] b, int off, int len)最多读取 len - off 字节的数据到 b 中放在从 off 开始返回实际读到的数量-1 代表以及读完了voidclose()关闭字节流 3.1.1.2 OutputStream 默认打开一个文件会先清空要继续写不清空在创建对象时传入true作为第二个参数。 OutputStream在源码中是一个抽象类不能直接new对象。提供了一个子类FileOutputStream。 类需要传文件路径如果文件没找到还会抛出FileNotFoundException异常。 方法 返回值方法签名说明voidwrite(int b)写入要给字节的数据voidwrite(byte[ ] b)将 b 这个字符数组中的数据全部写入 os 中intwrite(byte[ ] b, int off, int len)将 b 这个字符数组中从 off 开始的数据写入 os 中一共写 len 个voidclose()关闭字节流voidflush()重要我们知道 I/O 的速度是很慢的所以大多的 OutputStream 为了减少设备操作的次数在写数据的时候都会将数据先暂时写入内存的一个指定区域里直到该区域满了或者其他指定条件时才真正将数据写入设备中这个区域一般称为缓冲区。但造成一个结果就是我们写的数据很可能会遗留一部分在缓冲区中。需要在最后或者合适的位置调用 flush刷新操作将数据刷到设备中。 3.1.2 字符流 字符流对应着文本文件每次读写的最小单位是字符根据当前字符集来一个中文字符在utf8就是3字节GBK就是两字节。 字符流就相当于对字节流进行了一个封装自动帮我们把字节流中相邻几个字节转换成字符。 字符流提供了两个父类ReaderWriter来供继承。 3.1.2.1 Reader Reader在源码中是一个抽象类不能直接new对象。提供了一个子类FileReader。 FileReader类需要传文件路径如果文件没找到还会抛出FileNotFoundException异常。 Reader中读取字符常用是read方法都会抛出IOException异常介绍常用3种。 返回值分法签名说明intread()读取一个字符读取到返回ASCII值或者字符集编码值没读取到返回-1intread(char[ ] cbuf)读取多个字符尽量将cbuf数组填满返回读取到的字符个数如果读完文件返回-1intread(char[ ] cbuf, int off, int len)l最多读len-off个从数组off下标开始储存返回读到的个数如果读完文件返回-1 返回值说明 int作为返回值时返回的是一个2字节表示的这时因为在Java中char类型是Unicode编码而String是由utf8编码String的编码集可改。 创建了一个Reader对象要释放对象名.close(); 主要释放的是文件描述符表在进程介绍PCB的主要属性文件描述符表里面主要用顺序表数组来储存如果一直不释放里面数组被占满就会发生内存泄露。 但是如果直接就这么写那如果上面代码抛出异常就执行不到close改进方法 try-finally处理 Reader reader new FileReader(d:/test.txt); try {int n reader.read(); } finally {reader.close();}try with resource 在定义对象时放入出了try语句就会自动调用类实现的close方法必须是实现了closeable接口的。 try( Reader reader new FileReader(d:/test.txt) ) {int n reader.read(); }3.1.2.2 Writer 默认打开一个文件会先清空要继续写不清空在创建对象时传入true作为第二个参数。 InputStream在源码中是一个抽象类不能直接new对象。提供了一个子类FileInputStream。 类需要传文件路径如果文件没找到还会抛出IOException异常。 方法 返回值方法签名说明voidwrite(int c)写入要给文件的数据voidwrite(char[ ] cbuf)将 cbuf 这个字符数组中的数据全部写入 os 中intwrite(byte[ ] cbuf, int off, int len)将 cbuf 这个字符数组中从 off 开始的数据写入 os 中一共写 len 个voidwrite(String str)将 str 这个字符串中的数据全部写入 os 中voidwrite(String str, int off, int len)将 str 这个字符串中的数据从 off 开始的数据写入 os 中一共写 len 个voidclose()关闭字节流voidflush()重要我们知道 I/O 的速度是很慢的所以大多的 OutputStream 为了减少设备操作的次数在写数据的时候都会将数据先暂时写入内存的一个指定区域里直到该区域满了或者其他指定条件时才真正将数据写入设备中这个区域一般称为缓冲区。但造成一个结果就是我们写的数据很可能会遗留一部分在缓冲区中。需要在最后或者合适的位置调用 flush刷新操作将数据刷到设备中。 3.2 字节流字符流转换 使用Scanner工具类去读取文件中的字符。 try(InputStream inputStream new FileInputStream(D:/test.txt)) {Scanner scanner new Scanner(inputStream);String s scanner.next();}使用PrintWriter工具类去写入文件中的字符。 try(OutputStream outputStream new FileOutputStream(D:/test.txt,true)) {PrintWriter printWriter new PrintWriter(outputStream);printWriter.println();}四、自定义快读类 自定义快读类来解决我们做算法题的时候由于数据量过大的时候引起的超时问题。 4.1 自定义快速读入 我们使用Scanner去读IO设备文件而我们现在使用BufferedReader来开辟一个内存缓冲区在内存中拿数据比IO设备要快得多。 步骤 字节流转变为字符流在存入内存缓冲区中。 BufferedReader bf new BufferedReader(new InputStreamReader(system.in));字符串裁剪对象拿到内存缓冲区的字符串的必要对象。 StringTokenizer st new StringTokenizer();详解next方法相当于在内存缓冲区中拿一行数据使用while循环来处理多行输入。 String next() throws IOException {while(!st.hasMoreTokens()) {st new StringTokenizer(bf.readLine());}return st.nextToken(); }其他直接返回对应的parse转换就行。 类代码 import java.util.StringTokenizer; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.IOException; class Read {StringTokenizer st new StringTokenizer();BufferedReader bf new BufferedReader(new InputStreamReader(System.in));String next() throws IOException {while(!st.hasMoreTokens()) {st new StringTokenizer(bf.readLine());}return st.nextToken();}String nextLine() throws IOException {return bf.readLine();}int nextInt() throws IOException {return Integer.parseInt(next());}long nextLong() throws IOException {return Long.parseLong(next());}double nextDouble() throws IOException {return Double.parseDouble(next());}float nextFloat() throws IOException {return Float.parsefloat(next());} } 4.2 自定义快速输出 跟自定义一样的优化方式。 public static PrintWriter out new PrintWriter(new BufferedWriter(new OutPutStreamWriter(System.out)))使用之后就直接 out.输出方法输出方法与System.out一样。
http://www.hkea.cn/news/14545088/

相关文章:

  • shopex进入网站自动回跳转到别的网站 是否被挂马百度云空间能做网站吗
  • 苏州手机网站建设多少钱十大教育培训机构排名
  • 不屏蔽网站的浏览器常州人才招聘网
  • 合肥哪家公司做网站网上银行登录
  • 南宁网站开发价格为什么访问外国网站速度慢
  • 咖啡网站建设市场分析设计室内装修效果图
  • 个人主页网站制作模板c2c电子商务网站建设栏目结构图
  • 毕设做桌面软件还是网站网站内容优化
  • 外贸网站建设 soho简单手机网站如何制作
  • 做网站哪家公司专业网站开发手机自适应
  • 吉林3厅官齐聚任免大会宁波网站建设铁道部网上订票网站素材
  • 网站建设 方案书深圳注册公司推荐
  • 国际旅游网站设计报告通辽做网站建设
  • logo设计竞标网站小型服务器做网站
  • 厦门市规划建设局网站深圳网站设计设计
  • 物流网站制作怎么做网站建设国际标准
  • 做调查问卷能挣钱的网站qq是腾讯还是阿里
  • 北京网站开发团队成都手机微信网站建设报价单
  • 免费网站建设模版云盘自己做网站语言构建服务器
  • 给别的公司提供网站建设平价建网站格
  • 打鱼在线游戏网站建设新建网站如何推广
  • 单页面网站 wordpress托管服务器是什么意思
  • 网站建设需要包含什么在哪些网站做收录比较快
  • 素材网站 源码珠海网站建设培训
  • 江苏网站建设公司哪家好互联网营销方案策划
  • 电子商务网站建设与管理感想网站 建设制作菜鸟教程
  • 漯河网站开发网页设计制作公司排行榜
  • google网站排名介绍化工项目建设和招聘的网站
  • 网站邮件推送竞价推广岗位职责
  • shtml怎么做网站企业宣传册制作