class rssreader{
int s;
String bun;
String[] title=new String[100];
String[] source=new String[100];
String[] date=new String[100];
String[] content=new String[100];
String[] link=new String[100];
int x[]=new int[1000];
int y[]=new int[1000];
int item1[]=new int[100];
int item2[]=new int[100];
int source1[]=new int[100];
int source2[]=new int[100];
int link1[]=new int[100];
int link2[]=new int[100];
int title1[]=new int[100];
int title2[]=new int[100];
int date1[]=new int[100];
int date2[]=new int[100];
int content1[]=new int[100];
int content2[]=new int[100];
String xml[]=new String[1000];
int xmlnumber;
int articlenumber;
String str,v;
void makedata(){
startxml();
makexml();
makeitem();
for(s=1;s<articlenumber+1;s++){
maketitle(s);
makedate(s);
makecontent(s);
makesource(s);
makelink(s);
}
zen();
}
void startxml(){
int s,mode,z;
s=1;
mode=0;
z=bun.indexOf("<");
x[1]=z;
while(mode<50){
z=bun.indexOf("<",z+1);
if(z>-1)s=s+1;
if(z>-1)x[s]=z;
if(z<0)mode=100;
}
s=1;
mode=0;
z=bun.indexOf(">");
y[1]=z;
while(mode<50){
z=bun.indexOf(">",z+1);
if(z>-1)s=s+1;
if(z>-1)y[s]=z;
if(z<0)mode=100;
}
xmlnumber=s;
}
void maketitle(int s){
int p1,p2,sx,x1,x2;
p1=item1[s];
p2=item2[s];
for(sx=p1;sx<p2;sx++){
x1=xml[sx].indexOf("title");
x2=xml[sx].indexOf("/title");
if(x2>-1)x1=-999;
if(x1>-1)title1[s]=sx;
if(x2>-1)title2[s]=sx;
}
}
void makexml(){
int s,p1,p2;
for(s=1;s<xmlnumber+1;s++){
p1=x[s];
p2=y[s];
xml[s]=bun.substring(p1+1,p2);
}
}
void makeitem(){
int s,sx,p1,p2;
sx=0;
for (s=1;s<xmlnumber+1;s++){
p1=xml[s].indexOf("item");
p2=xml[s].indexOf("/item");
if(p2>-1)p1=-999;
if(p1==0)sx=sx+1;
if(p1==0)item1[sx]=s;
if(p2==0)item2[sx]=s;
}
articlenumber=sx;
}
void makesource(int s){
int sx,p1,p2,x1,x2;
p1=item1[s];
p2=item2[s];
for(sx=p1;sx<p2+1;sx++){
x1=xml[sx].indexOf("source");
x2=xml[sx].indexOf("/source");
if(x2>-1)x1=-999;
if(x1>-1)source1[s]=sx;
if(x2>-1)source2[s]=sx;
}
}
void makedate(int s){
int sx,p1,p2,x1,x2;
p1=item1[s];
p2=item2[s];
for(sx=p1;sx<p2;sx++){
x1=xml[sx].indexOf("pubDate");
x2=xml[sx].indexOf("/pubDate");
if(x2>-1)x1=-999;
if(x1>-1)date1[s]=sx;
if(x2>-1)date2[s]=sx;
}
}
void makelink(int s){
int sx,p1,p2,x1,x2,z;
String str;
p1=item1[s];
p2=item2[s];
z=1;
for(sx=p1;sx<p2;sx++){
x1=xml[sx].indexOf("link");
x2=xml[sx].indexOf("/link");
if(x2>-1)x1=-999;
if(x1>-1)link1[s]=sx;
if(x2>-1)link2[s]=sx;
}
}
void makecontent(int s){
int sx,p1,p2,x1,x2;
p1=item1[s];
p2=item2[s];
for(sx=p1;sx<p2;sx++){
x1=xml[sx].indexOf("description");
x2=xml[sx].indexOf("/description");
if(x2>-1)x1=-999;
if(x1>-1)content1[s]=sx;
if(x2>-1)content2[s]=sx;
}
}
void zen(){
int p1,p2;
for(s=1;s<articlenumber+1;s++){
p1=y[title1[s]];
p2=x[title2[s]];
title[s]=bun.substring(p1+1,p2);
}
for(s=1;s<articlenumber+1;s++){
p1=y[content1[s]];
p2=x[content2[s]];
content[s]=bun.substring(p1+1,p2);
}
for(s=1;s<articlenumber+1;s++){
p1=y[date1[s]];
p2=x[date2[s]];
date[s]=bun.substring(p1+1,p2);
}
for(s=1;s<articlenumber+1;s++){
p1=y[source1[s]];
p2=x[source2[s]];
source[s]=bun.substring(p1+1,p2);
}
for(s=1;s<articlenumber+1;s++){
p1=y[link1[s]];
p2=x[link2[s]];
link[s]=bun.substring(p1+1,p2);
}
}
}
最終更新:2011年04月11日 08:10