import java.io.*;
import java.net.*;
class game0320{
int s;
String str,urlx;
String bun,chbun;
String[] article=new String[100];
String[] title=new String[100];
String[] des=new String[100];
String[] dex=new String[100];
int articlenumber;
String z;
public static void main(String [] args) {
game0320 f=new game0320();
}
game0320(){
urlx="http://trans2.blog4.fc2.com/?xml";
getdata(urlx);
chbun=cutrdf(bun);
makearticle(chbun);
for(s=1;s<articlenumber+1;s++){
title[s]=maketitle(article[s]);
des[s]=makedes(article[s]);
dex[s]=makedex(article[s]);
}
for(s=1;s<articlenumber+1;s++){
dex[s]=rev(dex[s]);
dex[s]=rev2(dex[s]);
dex[s]=rev3(dex[s]);
}
for(s=1;s<articlenumber+1;s++){
System.out.println(dex[s]);
}
}
String rev3(String str){
String z1;
int t;
z1=str;
for(t=1;t<10;t++){
z1=fpor(z1);
z1=bpor(z1);
}
return z1;
}
String bpor(String str){
String str1,z1,z2;
int p,zlong;
str1="]";
z=str;
zlong=str.length();
p=z.indexOf(str1);
z1="";
z2="";
if(p>0)z1=z.substring(0,p-1);
if(p>0)z2=z.substring(p+1,zlong);
if(p>0)z=z1+z2;
return z;
}
String fpor(String str){
String str1,z1,z2;
int p,zlong;
str1="[";
z=str;
zlong=str.length();
p=z.indexOf(str1);
z1="";
z2="";
if(p>0)z1=z.substring(0,p-1);
if(p>0)z2=z.substring(p+1,zlong);
if(p>0)z=z1+z2;
return z;
}
String rev2(String str){
String z;
int p;
z=str;
p=check(z);
while(p>50){
z=play(z);
p=check(z);
}
return z;
}
int check(String str){
int p,h,p1,p2;
String str1,str2;
str1="<";
str2=">";
p=100;
p1=str.indexOf(str1);
p2=str.indexOf(str2);
h=0;
if(p1<0)p=0;
if(p2<0)p=0;
return p;
}
String play(String str){
int p1,p2,px,zlong;
String r2[]=new String[100];
String str1,str2;
String x1,x2;
str1="<";
str2=">";
zlong=str.length();
p1=str.indexOf(str1);
p2=str.indexOf(str2);
zlong=str.length();
x1=str.substring(0,p1-1);
x2=str.substring(p2+1,zlong);
return x1+x2;
}
String rev(String str){
int p;
String r[]=new String[100];
String str1,z;
str1="CDATA";
z=str;
p=str.indexOf(str1);
if(p>-1)r=str.split(str1);
z=r[1];
return z;
}
String makedex(String str){
String str1,str2,z;
int p;
str1="</content:encoded>";
p=str.indexOf(str1);
z="";
while(p>0){
String[] x= str.split(str1);
str2="<content:encoded>";
String[] y= x[0].split(str2);
z=y[1];
p=-100;
}
return z;
}
String cutrdf(String str){
String str1,z;
String[] y=new String[10];
int p;
str1="</channel>";
z=str;
p=str.indexOf(str1);
if(p>-1)y=str.split(str1);
if(p>-1)z=y[1];
return z;
}
String makedes(String str){
String str1,str2;
str1="</description>";
String[] x= str.split(str1);
str2="<description>";
String[] y= x[0].split(str2);
return y[1];
}
String maketitle(String str){
String str1,str2;
str1="</title>";
String[] x= str.split(str1);
str2="<title>";
String[] y= x[0].split(str2);
return y[1];
}
void makearticle(String str){
String str1,str2;
int p,sx;
str1="</item>";
str2="<title>";
String[] x=str.split(str1);
sx=0;
for (s=0;s<x.length;s++){
p=x[s].indexOf(str2);
if(p>-1)sx=sx+1;
if(p>-1)article[sx]=x[s];
}
articlenumber=sx;
}
void getdata(String name){
int num;
int n;
String data[]=new String[1000];
num=0;
try{
URL url = new URL(name);
HttpURLConnection con = (HttpURLConnection)url.openConnection();
con.setRequestMethod("GET");
con.connect();
BufferedReader reader =
new BufferedReader(new InputStreamReader(con.getInputStream(),"UTF-8"));
n=0;
while (true){
String line = reader.readLine();
if ( line == null ){
break;
}
data[n]=line;
n=n+1;
num=n;
}
reader.close();
con.disconnect();
}
catch(Exception e) { System.err.println(e); }
bun="";
for (n=0;n<num;n++){
bun=bun+data[n];
}
}
}
最終更新:2011年03月31日 15:43