收藏此站 联系我们 网站
当前位置:首页» 网站推广 » 【建站服务】百色淘宝装修/百色京东店铺设计/百色拼多多网店装修公司/百色企业网店开通申请-网店装修设计-域名申请

【建站服务】百色淘宝装修/百色京东店铺设计/百色拼多多网店装修公司/百色企业网店开通申请-网店装修设计-域名申请

作者: 风兰 . 阅读量: 5 . 发表时间:2022-09-21 02:45:35

网站建设

上往建站提供服务器空间服务商百度快照排名网站托管百度推广运营,致力于设计外包服务与源代码定制开发360推广搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。


百色淘宝装修/百色京东店铺设计/百色拼多多网店装修公司/百色企业网店开通申请-网店装修设计


网站建设.png

Java Scanner 类

java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入。

下面是创建 Scanner 对象的基本语法:

Scanner s = new Scanner(System.in);

接下来我们演示一个最简单的数据输入,并通过 Scanner 类的 next() 与 nextLine() 方法获取输入的字符串,在读取前我们一般需要 使用 hasNext 与 hasNextLine 判断是否还有输入的数据:


使用 next 方法:

ScannerDemo.java 文件代码:

import java.util.Scanner; public class ScannerDemo {    public static void main(String[] args) {        Scanner scan = new Scanner(System.in);        // 从键盘接收数据        // next方式接收字符串        System.out.println("next方式接收:");        // 判断是否还有输入        if (scan.hasNext()) {            String str1 = scan.next();            System.out.println("输入的数据为:" + str1);        }        scan.close();    }}

执行以上程序输出结果为:

$ javac ScannerDemo.java
$ java ScannerDemonext方式接收:runoob com输入的数据为:runoob

可以看到 com 字符串并未输出,接下来我们看 nextLine。

使用 nextLine 方法:

ScannerDemo.java 文件代码:

import java.util.Scanner; public class ScannerDemo {    public static void main(String[] args) {        Scanner scan = new Scanner(System.in);        // 从键盘接收数据        // nextLine方式接收字符串        System.out.println("nextLine方式接收:");        // 判断是否还有输入        if (scan.hasNextLine()) {            String str2 = scan.nextLine();            System.out.println("输入的数据为:" + str2);        }        scan.close();    }}

执行以上程序输出结果为:

$ javac ScannerDemo.java
$ java ScannerDemonextLine方式接收:runoob com输入的数据为:runoob com

可以看到 com 字符串输出。

next() 与 nextLine() 区别

next():

  • 1、一定要读取到有效字符后才可以结束输入。

  • 2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。

  • 3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。

  • next() 不能得到带有空格的字符串。

nextLine():

  • 1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。

  • 2、可以获得空白。

如果要输入 int 或 float 类型的数据,在 Scanner 类中也有支持,但是在输入之前最好先使用 hasNextXxx() 方法进行验证,再使用 nextXxx() 来读取:


运行结果:


A.java

B.java

C.java

J1.java

J2.java

J3.java

我是 DOC 文档.doc

我是 XLS 工作表.xls

我是文本文档.txt

********************************

A.java

B.java

C.java

J1.java

J2.java

J3.java

乔乔

   乔乔


  287***2758@qq.com


4年前 (2018-10-20)

   luffysman


  N92***5465@stu.xjtu.edu.cn


34

FileOutputStream 读写文件举例中出现乱码, 跟字符集编码无关, 是由于读写的格式不同导致的。


// 读写文件, 以二进制读写, 有乱码, 是由于输入输出格式转换的原因, 和字符集编码方式无关

public static void main(String[] args) {

    try { 

        byte[] bWrite = {11, 21, 3, 40, 5 };    

        OutputStream os = new FileOutputStream("./out/test.txt");   

        for (int x = 0; x < bWrite.length; ++x) {  

            os.write(bWrite[x]);  

        }       

        os.close();   

        InputStream is = new FileInputStream("./out/test.txt");      

        int size = is.available();    

        for (int x = 0; x < size; ++x) {   

            System.out.print((byte) is.read() + " ");    //强转为byte类型就好了  

        }  

        is.close();   

    } catch (IOException e) {  

        System.out.print("Exception");

    }

}

luffysman

   luffysman


  N92***5465@stu.xjtu.edu.cn


3年前 (2019-01-30)

   iamanoob


  599***619@qq.com


18

BufferedReader 是支持同步的,而 Scanner 不支持。如果我们处理多线程程序,BufferedReader 应当使用。


BufferedReader 相对于 Scanner 有足够大的缓冲区内存。


Scanner 有很少的缓冲区(1KB 字符缓冲)相对于 BufferedReader(8KB字节缓冲),但是这是绰绰有余的。


BufferedReader 相对于 Scanner 来说要快一点,因为 Scanner 对输入数据进行类解析,而 BufferedReader 只是简单地读取字符序列。


iamanoob

   iamanoob


  599***619@qq.com


3年前 (2019-03-13)

   sky-wu


  Wu_***@Foxmail.com


13

使用 io 流进行文件的简单复制:


test.txt 内容为:


I love Java,  I love JavaI love Java,  I love JavaI love Java,  I love JavaI love Java,  I love JavaI love Java,  I love Java

代码:


import java.io.*;


public class Test {

    public static void main(String[] args) {

        File sourcefile = new File("./test.txt");

        File copyfile = new File("./testcopy.txt");

        FileInputStream fileInputStream = null;// 从文件中读数据

        FileOutputStream fileOutputStream = null;// 用于把数据写入文件

        BufferedWriter bufferedWriter = null;// 用于把数据写入文件

        try {

            if (!sourcefile.exists()) {

                sourcefile.createNewFile();

                bufferedWriter = new BufferedWriter(new FileWriter(sourcefile));

                // bufferedwriter 自动追加数据

                String s = new String(" I love Java");


                char bchar[] = s.toCharArray();

                for (int i = 0; i < 5; i++) {

                    // 两种方式往文件中写数据

                    bufferedWriter.write(bchar, 0, bchar.length);

                    bufferedWriter.write(", " + s + " ");

                }

                // 写完之后才能关闭流,

                bufferedWriter.flush();

                bufferedWriter.close();

            }

            copyfile.createNewFile();

            fileInputStream = new FileInputStream(sourcefile);

            fileOutputStream = new FileOutputStream(copyfile);

            byte b[] = new byte[8192];

            int len = b.length;

            while ((len = fileInputStream.read(b, 0, len)) > 0) {

                fileOutputStream.write(b, 0, len);

                fileOutputStream.flush();

            }

            System.out.println("file copied");

            fileInputStream.close();

            fileOutputStream.close();

        } catch (IOException e) {

            e.printStackTrace();

        }

    }

}

执行程序,可以看到创建了一个 testcopy.txt 文件,内容为:


I love Java,  I love JavaI love Java,  I love JavaI love Java,  I love JavaI love Java,  I love JavaI love Java,  I love Java



百色淘宝装修/百色京东店铺设计/百色拼多多网店装修公司/百色企业网店开通申请-网店装修设计


上往建站提供搭建网站域名注册官网备案服务网店详情页设计企业网店专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管网页美工排版,致力于域名申请竞价托管软文推广全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机网站推广百度竞价托管网站建设上网建站推广服务网络公司有哪些等业务,专业团队服务,效果好。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)


关键词:网站建设,企业网站,网站制作,网页设计,高端网站建设,企业网站制作,网页制作,制作网站,网站设计,高端网页设计,高端网站设计,做网站,自适应网站

全国服务热线
18114747181
二维码
手机端二维码
上往建站
地址:全国各地都有驻点商务 |  网站建设上往建站
在线咨询QQ:1120768800
 
QQ在线咨询
售前咨询热线
18114747181
营销顾问
营销顾问
售后服务热线
400-000-1116
售后服务
售后服务