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

做企业网站联系ppt模板免费下载 素材小清新

做企业网站联系,ppt模板免费下载 素材小清新,大淘客网站代码,wordpress莫名文章本小节将会介绍基本输入输出的 Java 标准类#xff0c;通过本小节的学习#xff0c;你将了解到什么是输入和输入#xff0c;什么是流#xff1b;输入输出流的应用场景#xff0c;File类的使用#xff0c;什么是文件#xff0c;Java 提供的输入输出流相关 API 等内容。 1…本小节将会介绍基本输入输出的 Java 标准类通过本小节的学习你将了解到什么是输入和输入什么是流输入输出流的应用场景File类的使用什么是文件Java 提供的输入输出流相关 API 等内容。 1. 什么是输入和输出I / O 1.1 基本概念 输入/输出这个概念对于计算机相关专业的同学并不陌生在计算中输入/输出Input / Output缩写为 I / O是信息处理系统例如计算机)与外界可能是人类或其他信息处理系统之间的通信。输入是系统接收的信号或数据输出是从系统发送的信号或数据。 那么在 Java 中什么是输入和输出呢要理解这个概念可将 Java 平台视作一个系统。Java 平台是一个孤立的系统系统之外的所有东西都是它的环境。系统与其环境之间的交互是一种双向对话。系统要么从其环境接收消息要么将其消息传递给环境。当系统接收到消息时将其称为输入与之相反的是输出。 本小节将介绍 Java 的基本输入和输出包括从键盘读取文本输入将文本输出到屏幕以及从文件系统读取/写入文件。 Java 提供了两个用于 I / O 的包较旧的java.io包不支持符号链接和较新的java.nio“new io”包它对java.nio.file的异常处理进行了改进。 1.2 简单的 Java 输出——打印内容到屏幕 一直以来我们都在向屏幕输出内容以验证我们编写的代码逻辑。向屏幕输出内容非常简单可以由以下两种方式来完成 // 打印 Hello World不换行 System.out.print(Hello World);// 打印 Hello Java并换行 System.out.println(Hello Java);1.3 简单的 Java 输入——从键盘输入 java.util包下的Scanner类可用于获取用户从键盘输入的内容我们在Java Scanner 类这一小节已经介绍过具体使用实例如下 import java.util.Scanner;/*** author colorfulTaleLin*/ public class ScannerDemo {public static void main(String[] args) {// 创建扫描器对象Scanner scanner new Scanner(System.in);System.out.println(请输入您的姓名);// 可以将用户输入的内容扫描为字符串String name scanner.nextLine();// 打印输出System.out.println(你好 .concat(name).concat( 欢迎来到CSDN));// 关闭扫描器scanner.close();} }运行结果 请输入您的姓名 Colorful 你好 Colorful 欢迎来到CSDN2. 什么是流Stream Java 中最基本的输入/输入是使用流来完成的。 流是代表数据源和数据目标的对象怎么理解这句话呢简单来说可以读取作为数据源的流也可以写入作为数据目标的流。Java中的流是长度不确定的有序字节序列它是一连串流动的字符是以先进先出的方式发送信息的通道。 3. 输入输出流的应用场景 上面我们已经了解了输入输出流的基本概念那么它具体是做什么用的呢 在web产品的开发中最常开发的功能就是上传文件到服务器了这个文件的读写过程就要用到输入输出流。对于计算机中文件的读写、复制和删除等操作也都要用到输入输出流。输入输出流可以说是无处不在下面我们将会介绍 Java 中输入输出流相关的 API。 4. File 类 在 Java 中提供了java.io.File类对文件和目录进行操作。 File 意思为文件文件在计算机中非常重要我们编写的 word 文档、PPT 演示文稿、运行游戏的.exe可执行文件以及我们编写的 Java 源代码等等都是文件。 4.1 实例化 要实例化File对象需要传入一个文件或目录的路径。 File 类提供了如下 4 个构造方法 File(File parent, String child)从父抽象路径名和子路径名字符串创建新的文件实例File(String pathName)通过将给定的路径名字符串转换为抽象路径名创建一个新的文件实例最常用File(String parent, String child)从父路径名字符串和子路径名字符串创建新的文件实例File(URI uri)通过将给定的文件: URI转换为抽象路径名创建一个新的文件实例。 以Windows系统为例在桌面下有一个mybj目录该目录下有一个Hello.java文件和一个空的images目录。 我们可以单击Windows的路径栏来获取mybj目录的绝对路径。 有了目录和文件以及路径。我们分别实例化两个File对象实例如下 import java.io.File;public class FileDemo1 {public static void main(String[] args) {// 传入目录绝对路径File dir new File(C:\\Users\\Colorful\\Desktop\\mybj\\images);// 传入文件绝对路径File file new File(C:\\Users\\Colorful\\Desktop\\mybj\\Hello.java);// 打印两个File对象System.out.println(dir);System.out.println(file);} }我们可以直接打印File对象File类重写了toString()方法查看 Java 源码toString()方法直接返回了getPath()实例方法此方法返回构造方法传入的路径字符串 运行结果 C:\Users\Colorful\Desktop\mybj\images C:\Users\Colorful\Desktop\mybj\Hello.java上面代码中使用\\表示Windows下的路径分隔符\Linux和MacOS下使用正斜杠/作为路径分隔符。假设是同样的目录结构在MacOS和Linux下是这样表示的 File dir new File(/Users/Colorful/Desktop/mybj/images);因为Windows平台和其他平台路径分隔符不同使用不同平台的开发者就难以保证路径分隔符的统一。 为了保证代码更好的兼容性File类下提供了一个静态变量separator用于表示当前平台的系统分隔符 // 根据当前平台输出 / 获取 \ System.out.println(File.separator);4.2 绝对路径和相对路径 在实例化File对象时既可以传入绝对路径也可以传入相对路径。 绝对路径是以根目录开头的完整的全路径上面代码实例中传入的是绝对路径我们再来看看什么是相对路径以及如何传入相对路径。 相对路径指的是当前文件所在的路径引起的跟其它文件或文件夹的路径关系。听起来有点绕我们举例来说明一下在mybj目录下新建一个FileDemo2.java文件此时mybj目录的文件目录树结构如下 └── mybj├── FileDemo2.java├── Hello.java└── images内容如下 import java.io.File; import java.io.IOException;public class FileDemo2 {public static void main(String[] args) throws IOException {// 传入目录相对路径File dir new File(.\\images);File mybjDir new File(..\\mybj);// 传入文件相对路径File file new File(.\\Hello.java);} }上面代码的File构造方法中传入的就是相对路径代码中的.表示当前目录..表示上级目录。 Tips 我们在实例化 File 对象时不会产生对磁盘的操作因此即使传入的文件或目录不存在代码也不会抛出异常。只有当调用 File 对象下的一些方法时才会对磁盘进行操作。 File 对象下有 3 个表示路径的实例方法 String getPath()将抽象路径名转换为路径名字符串String getAbsolute()返回此抽象路径名的绝对路径名字符串String getCanonicalPath()返回此抽象路径名的规范路径名字符串。 我们可以调用这 3 个方法并打印结果实例如下 import java.io.File; import java.io.IOException;public class FileDemo2 {public static void main(String[] args) throws IOException {// 传入目录相对路径File imagesDir new File(.\\images);File mybjDir new File(..\\mybj);// 传入文件相对路径File file new File(.\\Hello.java);System.out.println(-- imagesDir ---);System.out.println(imagesDir.getPath());System.out.println(imagesDir.getAbsolutePath());System.out.println(imagesDir.getCanonicalPath());System.out.println(-- mybjDir ---);System.out.println(mybjDir.getPath());System.out.println(mybjDir.getAbsolutePath());System.out.println(mybjDir.getCanonicalPath());System.out.println(-- file ---);System.out.println(file.getPath());System.out.println(file.getAbsolutePath());System.out.println(file.getCanonicalPath());} }运行结果 -- imagesDir --- .\images C:\Users\Colorful\Desktop\mybj\.\images C:\Users\Colorful\Desktop\mybj\images -- mybjDir --- ..\mybj C:\Users\Colorful\Desktop\mybj\..\mybj C:\Users\Colorful\Desktop\mybj -- file --- .\Hello.java C:\Users\Colorful\Desktop\mybj\.\Hello.java C:\Users\Colorful\Desktop\mybj\Hello.java通过运行结果可以看出规范路径名就是把.和..转换为标准的绝对路径。 4.3 判断对象是文件还是目录 我们可以通过如下两个方法判断 File 对象是文件还是目录 boolean isFile()测试此抽象路径名表示的文件是否为普通文件;boolean isDirectory()测试此抽象路径名表示的文件是否为目录。 实例如下 import java.io.File;public class FileDemo3 {public static void printResult(File file) {// 调用isFile()方法并接收布尔类型结果boolean isFile file.isFile();String result1 isFile ? 是已存在文件 : 不是已存在文件;// 掉用isDirectory()方法并接收布尔类型而己过boolean directory file.isDirectory();String result2 directory ? 是已存在目录 : 不是已存在目录;// 打印该file对象是否是已存在文件/目录的字符串结果System.out.print(file);System.out.print(\t result1 \t);System.out.println(result2);}public static void main(String[] args) {// 传入目录绝对路径File dir new File(C:\\Users\\Colorful\\Desktop\\mybj\\images);// 传入文件绝对路径File file new File(C:\\Users\\Colorful\\Desktop\\mybj\\test.java);FileDemo3.printResult(dir);FileDemo3.printResult(file);} }运行结果 C:\Users\Colorful\Desktop\mybj\images 不是已存在文件 是已存在目录 C:\Users\Colorful\Desktop\mybj\test.java 不是已存在文件 不是已存在目录代码中我们封装了一个静态方法printResult()此方法打印 File 对象是否是文件/目录。值得注意的是我们的磁盘中不存在C:\Users\Colorful\Desktop\mybj\test.java因此无论调用isFile()方法还是isDirectory()方法其返回结果都为false。 4.4 创建和删除目录 4.4.1 创建目录 对于一个不存在的目录我们可以使用boolean mkdir()方法创建一个目录。例如我们想在mybj目录下创建一个codes目录就可以使用该方法编写一段创建目录的代码。 实例如下 import java.io.File;public class FileDemo4 {public static void main(String[] args) {// 传入目录绝对路径File dir new File(C:\\Users\\Colorful\\Desktop\\mybj\\codes);if (!dir.exists()) {// 调用 mkdir() 方法boolean result dir.mkdir();if (result) {System.out.println(目录创建成功);}}} }代码中我们调用了File对象的boolean exists()方法此方法用于测试由此抽象路径名表示的文件或目录是否存在。当不存在时我们才去创建目录。 运行代码前mybj文件目录树结构如下 └── mybj├── FileDemo2.java├── Hello.java└── images运行结果 目录创建成功运行代码后mybj目录下多了一个codes目录树结构如下 └── mybj├── FileDemo2.java├── Hello.java├── images└── codes另外File 类也提供了一个boolean mkdirs()方法用来创建由这个抽象路径名命名的目录包括任何必要但不存在的父目录。实际上是在递归执行mkdir()方法。 4.4.2 删除目录 如果我们想要删除刚刚创建的codes目录可以调用boolean delete()方法实例如下 import java.io.File;public class FileDemo5 {public static void main(String[] args) {// 传入目录绝对路径File dir new File(C:\\Users\\Colorful\\Desktop\\mybj\\codes);if (dir.exists()) {// 调用 delete() 方法boolean deleted dir.delete();if (deleted) {System.out.println(删除目录成功);}}} }运行代码前mybj文件目录树结构如下 └── mybj├── FileDemo2.java├── Hello.java├── images└── codes运行结果 删除目录成功运行代码后树结构如下 └── mybj├── FileDemo2.java├── Hello.java└── images4.5 创建和删除文件 对于文件类型的File对象可以通过boolean createNewFile()方法创建一个新文件使用boolean delete()方法删除文件。其调用方法和创建/删除目录相同此处不再赘述。 关于更多File对象的操作可翻阅官方文档。 5. InputStream 抽象类 5.1 概述 java.io.InputStream抽象类是 Java 提供的最基本的输入流它是所有输入流的父类。其最常用的抽象方法int read()签名如下 public abstract int read() throws IOException;这个方法用于读取输入流的下一个字节返回的int如果为-1则表示已经读取到文件末尾。 InputStream与其子类的 UML 图如下所示 5.2 FileInputStream 实现类 我们将以最常用的FileInputStream实现类为例进行学习。其他实现类大同小异如有需要可翻阅官方文档。 FileInputStream就是从文件流中读取数据我们在mybj目录下新建一个文本文档Hello.txt并输入如下内容 Hello mybj! 读取Hello.txt文件中数据的实例代码如下 import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException;public class FileInputStreamDemo1 {public static void main(String[] args) throws IOException {// 实例化文件流FileInputStream fileInputStream new FileInputStream(C:\\Users\\Colorful\\Desktop\\mybj\\Hello.txt);for (;;) {int n fileInputStream.read();if (n -1) {// read() 方法返回-1 则跳出循环break;}// 将n强制转换为 char 类型System.out.print((char) n);}// 关闭文件流fileInputStream.close();} }运行结果 Hello mybj!如果我们打开了一个文件并进行操作不要忘记使用close()方法来及时关闭。这样可以让系统释放资源。 6. OutputStream 抽象类 6.1 概述 OutPutStream抽象类是与InputStream对应的最基本的输出流它是所有输出流的父类。其最常用的抽象方法void write(int b)签名如下 public abstract void write(int b) throws IOException;这个方法用于写入一个字节到输出流。 OutputStream与其子类的 UML 图如下所示 6.2 FileOutputStream 实现类 我们同样以最常用的FileOutputStream实现类为例进行学习。其他实现类大同小异如有需要可翻阅官方文档。 FileOutputStream就是向文件流中写入数据下面我们向mybj目录下的文本文档Hello.txt输入一段字符串HHH。完整实例如下 import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException;public class FileOutputStreamDemo1 {public static void main(String[] args) throws IOException {FileOutputStream fileOutputStream new FileOutputStream(C:\\Users\\Colorful\\Desktop\\mybj\\Hello.txt);// 写入 3 个H字符fileOutputStream.write(72);fileOutputStream.write(72);fileOutputStream.write(72);fileOutputStream.close();} }运行代码后Hello.txt后面成功写入了 3 个字符H。 7. 小结 通过本小节的学习我们知道了什么是输入输出流的概念输入输出流经常用于上传文件到服务器的场景。想要通过 Java 操作文件和目录要学会使用java.io.File类InputStream和OutputStream分别是所有输入流和所有输出流的父类FileInputStream实现了文件流的输入FileOutputStream实现了文件流的输出。还有很多其它实现类我们没有介绍到但使用方法大同小异希望同学可以在用到时自行查阅文档来学习。
http://www.hkea.cn/news/14260846/

相关文章:

  • 12306网站是哪家公司做开发的湖南营销型网站建设多少钱
  • 视频在线网站免费观看网站模板html5
  • 使用vue路由做网站文档下载免费网站
  • 台州市建设招标投标网站一加官方网站进入
  • wordpress备案号代码东莞网站优化排名网站
  • 网站制作需要的软件如何建立一个网站论坛
  • 庆阳市建设工程网上投标网站重庆平台
  • 网络推广最好的网站有哪些嘉兴关键词优化报价
  • 网站制作公司加盟邹平县seo网页优化外包
  • 门户网站建设 简报谷歌seo排名技巧
  • 官方网站侵权wordpress实用插件
  • 河南省人事考试网家具类网站如何优化
  • 网站建设公司营业范围wordpress 新窗口打开文章
  • 网站服务器做缓存永久有效域名
  • 做网站建设的企业建网站价格 建设网站需要多少钱
  • 山西省住房城乡建设厅网站wordpress图片拖拽到富文本里面
  • 建网站流程的费用dede网站
  • 学习网站建设要什么学历有声直播网站建设
  • 免费用手机制作网站 百度百男生学什么技术最挣钱
  • 开了网站建设公司 如何接业务wordpress 国内 模板
  • 中国建设银行官网站和字币预约河南新闻频道在线直播观看
  • 好用的免费网站建设wordpress修改我要注册链接
  • 哈尔滨建设银行网站网址大全免费下载安装
  • 用nodejs做的网站公司网页设计制作有哪些
  • qq是哪个公司国内seo公司
  • 苏州网站设计哪家好做网站定制
  • 济南企业网站搭建赣州新闻最新消息
  • 赣州做网站的公司有哪家好怎么查找网站
  • 咸阳营销型网站建设外贸公司职位
  • 重庆建站网站建设平台先做网站后备案