初识网站开发流程图,搜索seo优化托管,如何做关于旅游的网站页面,wordpress 图片自动下载一、字节输入/输出流实现数据的保存和读取
编程要求
根据提示#xff0c;在右侧编辑器补充代码。 编写应用程序#xff08;SortArray.java#xff09;#xff0c;使用字节输入/输出流实现数据的保存和读取。 要求功能如下#xff1a;
输入1~100之间的整型数据保存到数组…一、字节输入/输出流实现数据的保存和读取
编程要求
根据提示在右侧编辑器补充代码。 编写应用程序SortArray.java使用字节输入/输出流实现数据的保存和读取。 要求功能如下
输入1~100之间的整型数据保存到数组数组大小为10中将数组排序由小到大后的元素保存到指定的文件中如果文件不存在则创建文件从文件中读取排序后的元素并按指定格式输出利用异常处理机制处理可能发生的错误
测试说明
平台会对你编写的代码进行测试
测试输入70 94 21 43 76 60 70 37 75 80
预期输出 21374360707075768094
代码
package step2;
import java.io.*;
import java.util.Scanner;public class Encrypt {public static void main(String[] args) throws IOException {// 创建要发送的电报Scanner sc new Scanner(System.in);String data sc.next();// 将电报分割成字符数组/********** Begin **********/char[] area data.toCharArray();/********** End **********/// 打开指定存放电报的文件如果文件不存在则创建File file new File(data.txt);if (!file.exists()) {file.createNewFile();}// 循环遍历字符数组将每个字符加密处理for (int i 0; i area.length; i) {area[i] (char) (area[i] ^ q);}// 利用字符输出流FileWriter将加密后的字符数组写入文件中/********** Begin **********/FileWriter fw new FileWriter(file);fw.write(area);fw.flush();fw.close();/********** End **********/// 利用字符输入流FileReader读取文件将密文输出/********** Begin **********/FileReader fr1 new FileReader(file);char[] buf1 new char[10];int n;System.out.println(密文);while ((n fr1.read(buf1)) ! -1) {String s new String(buf1);System.out.print(s);}System.out.println();fr1.close();/********** End **********/// 利用字符输入流FileReader读取文件将密文转换为明文输出/********** Begin **********/FileReader fr2 new FileReader(file);char[] buf2 new char[10];System.out.println(明文);while ((n fr2.read(buf2)) ! -1) {for (int i 0; i n; i) {buf2[i] (char) (buf2[i] ^ q);}String s new String(buf2);System.out.print(s);}fr2.close();/********** End **********/}
}
二、字符输入/输出流实现发送电报
编程要求
根据提示在右侧编辑器补充代码。
电报内容经过加密后使用字符输出流存储在指定的文件中如果文件不存在则创建文件使用字符输入流从文件中分别读取密文和明文的内容并显示出来利用异常处理机制处理可能发生的错误
注意在对字符加密时采用了异或^q的简单字符加密处理解密时也要进行逐个字符异或^q的处理。
测试说明
平台会对你编写的代码进行测试
测试输入 今晚10点发动总攻
预期输出 密文 亻昫A烈厠務恊敊 明文 今晚10点发动总攻
代码
package step2;
import java.io.*;
import java.util.Scanner;public class Encrypt {public static void main(String[] args) throws IOException {// 创建要发送的电报Scanner sc new Scanner(System.in);String data sc.next();// 将电报分割成字符数组/********** Begin **********/char[] area data.toCharArray();/********** End **********/// 打开指定存放电报的文件如果文件不存在则创建File file new File(data.txt);if (!file.exists()) {file.createNewFile();}// 循环遍历字符数组将每个字符加密处理for (int i 0; i area.length; i) {area[i] (char) (area[i] ^ q);}// 利用字符输出流FileWriter将加密后的字符数组写入文件中/********** Begin **********/FileWriter fw new FileWriter(file);fw.write(area);fw.flush();fw.close();/********** End **********/// 利用字符输入流FileReader读取文件将密文输出/********** Begin **********/FileReader fr1 new FileReader(file);char[] buf1 new char[10];int n;System.out.println(密文);while ((n fr1.read(buf1)) ! -1) {String s new String(buf1);System.out.print(s);}System.out.println();fr1.close();/********** End **********/// 利用字符输入流FileReader读取文件将密文转换为明文输出/********** Begin **********/FileReader fr2 new FileReader(file);char[] buf2 new char[10];System.out.println(明文);while ((n fr2.read(buf2)) ! -1) {for (int i 0; i n; i) {buf2[i] (char) (buf2[i] ^ q);}String s new String(buf2);System.out.print(s);}fr2.close();/********** End **********/}
}
三、简单TCP通信
编程要求
根据提示在右侧编辑器补充代码使用Socket和ServerSocket套接字编程完成简单的TCP通信。
测试说明
平台会对你编写的代码进行测试
测试输入张三
预期输出 你已经连上服务器了告诉我你的姓名... 再见:张三
代码
package step3;import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.net.InetAddress;
import java.net.Socket;
import java.util.Scanner;public class Client {public static void main(String[] args) throws Exception {Server server new Server();server.start();Scanner sc new Scanner(System.in);//创建客户端Socket(s)指定服务器端IP地址和端口号/********** Begin **********/Socket s new Socket(127.0.0.1, 8000);/********** end **********/DataOutputStream dos new DataOutputStream(s.getOutputStream());DataInputStream dis new DataInputStream(s.getInputStream());System.out.println(dis.readUTF());String name sc.next();dos.writeUTF(name);System.out.println(dis.readUTF());s.close();}
}
package step3;import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;public class Server extends Thread {Overridepublic void run() {try {//创建服务器端ServerSocket(ss)指定端口号8000/********** Begin **********/ServerSocket ss new ServerSocket(8000);/********** end **********/Socket s ss.accept();DataOutputStream dos new DataOutputStream(s.getOutputStream());DataInputStream dis new DataInputStream(s.getInputStream());dos.writeUTF(你已经连上服务器了告诉我你的姓名...);String name dis.readUTF();dos.writeUTF(再见: name);s.close();} catch (IOException e) {e.printStackTrace();}}
}
四、TCP通信实现奇偶数判断
编程要求
根据提示在右侧编辑器补充代码对输入的整数进行奇偶性判断当输入的整数为-1时程序结束运行。
测试说明
平台会对你编写的代码进行测试
测试输入1 2 3 4 -1
预期输出 请输入一个整数我知道是奇数还是偶数 1是...奇数 2是...偶数 3是...奇数 4是...偶数
代码 package step4;import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.EOFException;
import java.io.IOException;
import java.net.InetAddress;
import java.net.Socket;
import java.util.Scanner;public class ClientPlus {public static void main(String[] args) {Scanner sc new Scanner(System.in);ServerPlus server new ServerPlus();server.start();try {//创建客户端Socket(s)指定服务器端IP地址和端口号/********** Begin **********/Socket s new Socket(127.0.0.1, 8000);/********** end **********/DataOutputStream dos new DataOutputStream(s.getOutputStream());DataInputStream dis new DataInputStream(s.getInputStream());//客户端通过循环依次接收服务器返回的结果并输入新的整数传递给服务器/********** Begin **********/while(true){System.out.println(dis.readUTF());String num sc.next();dos.writeUTF(num);}/********** end **********/} catch (EOFException e) {} catch (IOException e) {e.printStackTrace();}}
}package step4;import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;public class ServerPlus extends Thread {Overridepublic void run() {try {/********** Begin **********///创建服务器端ServerSocket(ss)指定端口号8000ServerSocket ss new ServerSocket(8000);/********** end **********/Socket s ss.accept();DataOutputStream dos new DataOutputStream(s.getOutputStream());DataInputStream dis new DataInputStream(s.getInputStream());ReceiveThread thread new ReceiveThread(s, dos, dis);thread.start();} catch (IOException e) {e.printStackTrace();}}
} package step4;import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;
import java.net.SocketException;class ReceiveThread extends Thread {DataOutputStream dos;DataInputStream dis;Socket s;public ReceiveThread(Socket s, DataOutputStream dos, DataInputStream dis) {this.s s;this.dos dos;this.dis dis;}Overridepublic void run() {try {dos.writeUTF(请输入一个整数我知道是奇数还是偶数);while(true) {String num dis.readUTF();if(-1.equals(num)) {s.close();break;} String result (Integer.parseInt(num)%20)?偶数:奇数;dos.writeUTF(num 是... result);} } catch (SocketException e) {try {s.close();} catch (IOException e1) {e1.printStackTrace();}} catch (IOException e) {System.out.println(数据读取异常);} }
}