zoukankan      html  css  js  c++  java
  • udp开发-dtd验证,dom解析

    //博主太懒了,并没有提供范例程序

     

    6、基于UDP开发

    (1)发送方:socket->准备数据包

    DatagramSocket docket = new DatagramSocket();

    //准备数据包,

    InetAddress ia = InetAddress.getByName("对方的ip地址");

    DatagramPacket dp = new DatagramPacket(str.getBytes(),字节数足额长度,地址,端口号);

    //发送数据

    Socket.send(dp);

    2)接收方:

    DatagramSocket socket= new DatagramSocket(端口号);

    //准备接收数据包

    Byte[] b = new byte[1024];

    DatagramPacket dp = new DatagramPacket(b,b.lenth);

    //接收数据

    Socket.receiver(dp);

    //将字节数组的数据保存成字符串

    String s = new String(dp.getData(),0,dp.getData().length);

    补充:建立以此链接后,返回数据时,可以不指定端口

    SocketAddress sa  =  dp.getSocketAddress();

    Byte[] by = str.getBytes();

    DatagramPacket data = new DatagramPacket(by,by.length,sa);

     

    7、junit添加

    选中项目->右键:"build path" ->configure build path->libararies ->add Library->Junit->next,下

    拉菜单选择JUint4 ->Finish ->ok

     

    1xml声明语句:<?xml version="1,0" encoding="UTF-8"?>

    格式良好的XML文档需满足:

    <1>必须有XML声明

    <2>必须有且仅有一个根元素

    <3>标签大小写敏感

    <4>属性值用双引号

    <5>标签成对

    <6>元素正确嵌套

     

    2、DTD验证:

    (1)作用:对xml文件格式的限定,保证文件格式规整

    (2)实现:

    <!DOCTYPE 根标签名[

    <!ELEMENT 标签名(该标签中包含的内容)>//三者之间使用空格隔开

    ]>

    限定标签出现的次数符号:

    --0-1

    +--1到多次

    *--0到多次

     

    (3)验证属性:

    <!ATTLIST 属性坐在标签 属性名 属性值类型 [其他]>

    属性类型:CDATA-比奥斯文本

    其他:#REQUIRED--必填

     

    3、外部DTD

    引入语法:

    <!DOCTYPE 根元素 SYSTEM "dtd文件">

    注:dtd文件中直接使用 element 和 attlist标签

    一般情况下引入外部dtd

    文件后缀 dtd

     

    使用DOM解析XML主要使用的对象

    4、使用对象:DocumentNodeListNodeElement

    Document 表示XML的属性解耦股

    NodeList 表示 标签对集合

    Node 表示一对标签极其内容

    Element 表示标签,用于获取属性

    (2) 常用方法

    Document 

    getDocuementElement()Element- 获取根元素

    getElementsByTagName("标签"):获取指定的标签列表

    NodeList : 

    item(int index):遍历 每个Node节点 

    Element getAttribute("属性名"):返回标签中的属性值

    Node

    getNodeName()://获取节点名称

    getTextContent()://获取标签对中的文本

    注:获取标签的属性值时,需要将Node对象强转为Element

    强转前,先判断:

    If(node.getNodeType()==Element.ELEMENT_NODE){

    Element e = (Element)node;

    String attribute = e.getAttriubute("属性名称");

    }

  • 相关阅读:
    (转)CortexM3 (NXP LPC1788)之启动代码分析
    (转)CortexM3 (NXP LPC1788)之RTC
    (转)CortexM3 (NXP LPC1788)之外部中断操作
    (原创)TCP/IP学习笔记之ARP(地址解析协议)
    (原创)CheckTool:CRC校验、累加和校验、异或和校验专业校验工具V1.0
    (转)CortexM3 (NXP LPC1788)之SysTick系统节拍定时器
    (转)CortexM3 (NXP LPC1788)之UART用法
    工具 MyEclipse8.5注册码
    Delphi – UtWinHttp_API.pas From winhttp.h
    Delphi – TCanvas.CopyRect方法中参数CopyMode的意义
  • 原文地址:https://www.cnblogs.com/letben/p/5185486.html
Copyright © 2011-2022 走看看