很多站长朋友们都不太清楚php取writeUTF,今天小编就来给大家整理php取writeUTF,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 Flex中,如何通过界面写XML文件?请给个完整的例子代码(可追加分) 2、 java 解释下readUTF()和writeUTF()的意思吧? 3、 java聊天室源代码去哪里看更好? Flex中,如何通过界面写XML文件?请给个完整的例子代码(可追加分)Flex写XML文件 可以通过FileStream类的writeUTFBytes方法来实现。
1,首先你要创建一个xml:
var xml:XML = new XML("<?xml version='1.0' encoding='utf-8'?><user>.............</user>");
2,创建一个xml文件:
var file:File = File.documentsDirectory.resolvePath("xxx.xml");
3,通过FileStream类写文件:
var fileStream:FileStream = new FileStream();
fileStream.open(file, FileMode.WRITE);
fileStream.writeUTFBytes(xml.toString());
fileStream.close();
Alert.show("恭喜!已保存成功","文件生成成功!");
XML的读取方法有很多,可以用Httpservice,可以用webservice,也可以用File或是urlRequest等等.....更多详情可以查看官方API。
java 解释下readUTF()和writeUTF()的意思吧?writeUTF(String str);
write(int b) ;
writeBytes(String s) ;
这几个方法可以传的参数不一样。
writeUTF和writeBytes都可以传String类型的参数,而write就不行了。
-->2008/04/01
public final void writeUTF(String str)
throws IOException以与机器无关方式使用 UTF-8 修改版编码将一个字符串写入基础输出流。
首先,通过 writeShort 方法将两个字节写入输出流,表示后跟的字节数。该值是实际写出的字节数,不是字符串的长度。根据此长度,使用字符的 UTF-8 修改版编码按顺序输出字符串的每个字符。如果没有抛出异常,则计数器 written 增加写入输出流的字节总数。该值至少是 2 加 str 的长度,最多是 2 加 str 的三倍长度。
String readUTF()
throws IOException读入一个已使用 UTF-8 修改版格式编码的字符串。readUTF 的常规协定是:该方法读取使用 UTF-8 修改版格式编码的 Unicode 字符串的表示形式;然后以 String 的形式返回此字符串。
首先读取两个字节,并使用它们构造一个无符号 16 位整数,构造方式与 readUnsignedShort 方法的方式完全相同。该整数值被称为 UTF 长度,它指定要读取的额外字节数。然后成组地将这些字节转换为字符。每组的长度根据该组第一个字节的值计算。紧跟在某个组后面的字节(如果有)是下一组的第一个字节。
如果组的第一个字节与位模式 0xxxxxxx(其中 x 表示“可能为 0 或 1”)匹配,则该组只有这一个字节。该字节被左侧补零,转换成一个字符。
如果组的第一个字节与位模式 110xxxxx 匹配,则该组只由字节 a 和另一个字节 b 组成。如果没有字节 b(因为字节 a 是要读取的最后一个字节),或者字节 b 与位模式 10xxxxxx 不匹配,则抛出 UTFDataFormatException。否则,将该组转换成字符:
(char)(((a 0x1F) << 6) | (b 0x3F))
如果组的第一个字节与位模式 1110xxxx 匹配,则该组由字节 a 和另外两个字节 b 和 c 组成。如果没有字节 c(因为字节 a 是要读取的最后两个字节之一),或者字节 b 或字节 c 与位模式 10xxxxxx 不匹配,则抛出 UTFDataFormatException。否则,将该组转换成字符:
(char)(((a 0x0F) << 12) | ((b 0x3F) << 6) | (c 0x3F))
如果组的第一个字节与模式 1111xxxx 或模式 10xxxxxx 匹配,则抛出 UTFDataFormatException。
如果在执行整个过程中的任意时间到达文件末尾,则抛出 EOFException。
在通过此过程将每个组转换成字符后,按照从输入流中读取相应组的顺序,将这些字符收集在一起,形成一个 String,然后该字符串将被返回。
可以使用 DataOutput 接口的 writeUTF 方法写入适合此方法读取的数据。
java聊天室源代码去哪里看更好?【ClientSocketDemo.java 客户端Java源代码】 import java.net.*; import java.io.*; public class ClientSocketDemo { //声明客户端Socket对象socket Socket socket = null; //声明客户器端数据输入输出流 DataInputStream in; DataOutputStream out; //声明字符串数组对象response,用于存储从服务器接收到的信息 String response[]; //执行过程中,没有参数时的构造方法,本地服务器在本地,取默认端口10745 public ClientSocketDemo() { try { //创建客户端socket,服务器地址取本地,端口号为10745 socket = new Socket("localhost",10745); //创建客户端数据输入输出流,用于对服务器端发送或接收数据 in = new DataInputStream(socket.getInputStream()); out = new DataOutputStream(socket.getOutputStream()); //获取客户端地址及端口号 String ip = String.valueOf(socket.getLocalAddress()); String port = String.valueOf(socket.getLocalPort()); //向服务器发送数据 out.writeUTF("Hello Server.This connection is from client."); out.writeUTF(ip); out.writeUTF(port); //从服务器接收数据 response = new String[3]; for (int i = 0; i < response.length; i++) { response[i] = in.readUTF(); System.out.println(response[i]); } } catch(UnknownHostException e){e.printStackTrace();} catch(IOException e){e.printStackTrace();} } //执行过程中,有一个参数时的构造方法,参数指定服务器地址,取默认端口10745 public ClientSocketDemo(String hostname) { try { //创建客户端socket,hostname参数指定服务器地址,端口号为10745 socket = new Socket(hostname,10745); in = new DataInputStream(socket.getInputStream()); out = new DataOutputStream(socket.getOutputStream()); String ip = String.valueOf(socket.getLocalAddress()); String port = String.valueOf(socket.getLocalPort()); out.writeUTF("Hello Server.This connection is from client."); out.writeUTF(ip); out.writeUTF(port); response = new String[3]; for (int i = 0; i < response.length; i++) { response[i] = in.readUTF(); System.out.println(response[i]); } } catch(UnknownHostException e){e.printStackTrace();} catch(IOException e){e.printStackTrace();} } //执行过程中,有两个个参数时的构造方法,第一个参数hostname指定服务器地址 //第一个参数serverPort指定服务器端口号 public ClientSocketDemo(String hostname,String serverPort) { try { socket = new Socket(hostname,Integer.parseInt(serverPort)); in = new DataInputStream(socket.getInputStream()); out = new DataOutputStream(socket.getOutputStream()); String ip = String.valueOf(socket.getLocalAddress()); String port = String.valueOf(socket.getLocalPort()); out.writeUTF("Hello Server.This connection is from client."); out.writeUTF(ip); out.writeUTF(port); response = new String[3]; for (int i = 0; i < response.length; i++) { response[i] = in.readUTF(); System.out.println(response[i]); } } catch(UnknownHostException e){e.printStackTrace();} catch(IOException e){e.printStackTrace();} } public static void main(String[] args) { String comd[] = args; if(comd.length == 0) { System.out.println("Use localhost(127.0.0.1) and default port"); ClientSocketDemo demo = new ClientSocketDemo(); } else if(comd.length == 1) { System.out.println("Use default port"); ClientSocketDemo demo = new ClientSocketDemo(args[0]); } else if(comd.length == 2) { System.out.println("Hostname and port are named by user"); ClientSocketDemo demo = new ClientSocketDemo(args[0],args[1]); } else System.out.println("ERROR"); } } //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 【ServerSocketDemo.java 服务器端Java源代码】 import java.net.*; import java.io.*; public class ServerSocketDemo { //声明ServerSocket类对象 ServerSocket serverSocket; //声明并初始化服务器端监听端口号常量 public static final int PORT = 10745; //声明服务器端数据输入输出流 DataInputStream in; DataOutputStream out; //声明InetAddress类对象ip,用于获取服务器地址及端口号等信息 InetAddress ip = null; //声明字符串数组对象request,用于存储从客户端发送来的信息 String request[]; public ServerSocketDemo() { request = new String[3]; //初始化字符串数组 try { //获取本地服务器地址信息 ip = InetAddress.getLocalHost(); //以PORT为服务端口号,创建serverSocket对象以监听该端口上的连接 serverSocket = new ServerSocket(PORT); //创建Socket类的对象socket,用于保存连接到服务器的客户端socket对象 Socket socket = serverSocket.accept(); System.out.println("This is server:"+String.valueOf(ip)+PORT); //创建服务器端数据输入输出流,用于对客户端接收或发送数据 in = new DataInputStream(socket.getInputStream()); out = new DataOutputStream(socket.getOutputStream()); //接收客户端发送来的数据信息,并显示 request[0] = in.readUTF(); request[1] = in.readUTF(); request[2] = in.readUTF(); System.out.println("Received messages form client is:"); System.out.println(request[0]); System.out.println(request[1]); System.out.println(request[2]); //向客户端发送数据 out.writeUTF("Hello client!"); out.writeUTF("Your ip is:"+request[1]); out.writeUTF("Your port is:"+request[2]); } catch(IOException e){e.printStackTrace();} } public static void main(String[] args) { ServerSocketDemo demo = new ServerSocketDemo(); } } 你可以去这里看看
关于php取writeUTF的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php取writeUTF的简单介绍的详细内容...