まず JAVA 実行環境をインストールし、PHP と組み合わせてください。詳細については、http://www.phpx.com/happy/thr78795.html を参照するか、http://www.javax.org/download/php_java をダウンロードしてください。 .rar
そこに書きました readme.txt ドキュメントがあり、この圧縮パッケージは簡単な例です。
私の JAVA ソース コードをダウンロードするには、http://www.javax.org/download/JavaXml.rar にアクセスしてください。
その他の質問がある場合は、http://www.javax.org/ にアクセスして質問してください。
最初はPHPでXMLを解析しようと思ったのですが、PHPでXMLを解析するのはちょっと面倒だったのでPHP5の方が便利そうなのですが、ここでは5をインストールしなかったので4.3のままでした。その後、IBM の記事 (http://www-900.cn.ibm.com/developer...kit/index.shtml) で JAVA が使用できると記載されていたので、試してみます。
解析する XML ファイル: first.xml、内容は次のとおりです:
年齢>
<名前>傘名前> gt;
ここで、
PHP が解析するときにファイルを確認します:
$JavaXml = new Java("JavaXml") //これは、XML データを解析するために JAVA を生成するために作成したクラスです
$JavaXml->init(); ; //ここでは、global.properties ファイル内の XML ファイル ディレクトリを取得するなどの初期化を行います (もちろん、サンプルをダウンロードした後、XML ファイル ディレクトリに変更する必要があります)
$JavaXml->Parse("first.xml "); / /global.properties ファイルで指定されたディレクトリを基準にして、解析するファイルを指定します
$JavaXml->get(0); //取得する最初のノードです
echo $JavaXml-> ;getValue("name" )."
"; //最初のノードの name タグ値を取得します
echo $JavaXml->getValue("age")."
";最初のノードの年齢タグ値
$JavaXml->setValue("name","Big Head Dad"); //最初のノードの名前ラベル値を Big Head Dad に設定します
$JavaXml->get( 1); //ここで 2 番目のノードを取得します
echo $JavaXml->getValue("name")."
" //2 番目のノードの名前タグ値を取得します
echo $JavaXml-> ;getValue("age")."
$JavaXml->get(0); たとえば、次のようになります。私の XML ファイルには
Xiao Zeng
20
Umbrella
20
Because $JavaXml->setValue( "name","Big Head Dad"); この文は、最初のノードの name タグの値を変更します。更新されたため、PHP ファイルを再度実行すると、結果は次のようになります。
Big Head Dad
20
Umbrella
20
上記の単純な文は、JDOM を使用して XML を解析する私の JAVA クラスです。
org.jdom.* をインポートします。
import org.jdom.output.* ;
import org.jdom.input.* ;
インポート java.io.* ;
インポート java.util.*;
public class JavaXml {
public String path=null;
public String XmlFileName=null;
public SAXBuilder sax=null;
公開ドキュメント doc=null;
public 要素 root=null;
公開リストxlist=null;
パブリック要素 e=null;
パブリック要素の値=null;
public String getTest(){
return new String("haha");
}
public JavaXml(){
}
public String init(){
InputStream is = getClass().getResourceAsStream("global.properties");
Properties dbProps = new Properties();
試してください{
dbProps.load( is ) ;
}
catch ( Exception e ) {
return ("error file");
}
this.path=dbProps.getProperty("XmlPath");
return (「ok」);
}
public void get(int child){
this.e=(Element)xlist.get(child);
}
public String getValue(String name){
this.value=e.getChild(name);
return this.value.getText();
}
public void setValue(String name,String value)throws Exception{
this.value=e.getChild(name);
this.value.setText(value);
XMLOutputter xmlout=new XMLOutputter();
xmlout.output(doc,new FileOutputStream(path+XmlFileName));
}
public void Parse(String XmlFileName)
throws Exception
{
this.XmlFileName=XmlFileName;
this.sax=new SAXBuilder();
this.doc=sax.build(new FileInputStream(path+XmlFileName));
this.root=doc.getRootElement();
this.xlist=root.getChildren();
}
}