ASP.NET下如何读取MARC?

[复制链接]
查看11 | 回复7 | 2011-11-4 06:17:30 | 显示全部楼层 |阅读模式
取到Marc字符串后,按照Marc的拼接规则,进行字符串分割,具体规则要看你用的是什么Marc
回复

使用道具 举报

千问 | 2011-11-4 06:17:30 | 显示全部楼层
提问人的追问
                               
                                2011-09-0513:02
                       
                       
                        有没有具体的例子?
回复

使用道具 举报

千问 | 2011-11-4 06:17:30 | 显示全部楼层
回答人的补充
                                2011-09-0513:08
                       
                        privatevoidGetData(stringstrMarc)
{
strMarc=strMarc.Substring(24,strMarc.Length-26);
intsep=strMarc.IndexOf(\"#\");
stringstrMark=strMarc.Substring(0,sep);
stringstrContent=strMarc.Substring(sep,strMarc.Length-sep);string[]contents=Regex.Split(strContent,@\"\\#[\\d|\\s|a]{2}\\@\",RegexOptions.IgnoreCase);
intfirstflag=0;//首行标识符
intflag=1;//主内容标识符
string[]firstline=contents[0].Remove(0,1).Split(\'#\');
boolfldone=false;intlen=strMark.Length/12;
string[]keys=newstring[len];
string[]values=newstring[len];
for(inti=0;ilen;i)
{
stringmark=strMark.Substring(i*12,3);
if(Int32.Parse(mark)10)//标识符小于010时特殊处理
{
if(!fldone)//内容部分为首行
{
keys=mark;
values=firstline[firstflag];
firstflag;
if(firstflag=firstline.Length)
{
fldone=true;
}
}
else//内容部分为中间
{
stringtemp=contents[flag-1];
inttempindex=temp.LastIndexOf(\"#\")1;
values[i-1]=\"@\"temp.Substring(0,tempindex-1);
keys=mark;
values=temp.Substring(tempindex,temp.Length-tempindex);
}
}
else
{
keys=mark;
values=\"@\"contents[flag];
flag;
}
}
SortedListstring,stringsl=newSortedListstring,string(newMySort());
for(inti=0;ilen;i)//填充并排序
{
sl.Add(keys,values);//特殊字段的处理
}
}
回复

使用道具 举报

千问 | 2011-11-4 06:17:30 | 显示全部楼层
提问人的追问
                               
                                2011-09-0513:12
                       
                        你的MARC是图书的哪种吗?没有返回书的信息之类?
回复

使用道具 举报

千问 | 2011-11-4 06:17:30 | 显示全部楼层
回答人的补充
                                2011-09-0513:15
                       
                        书的信息都在SortedListstring,stringsl里字段说明看这里:http://wenku.baidu.com/view/fd32060203d8ce2f006623be.html
回复

使用道具 举报

千问 | 2011-11-4 06:17:30 | 显示全部楼层
提问人的追问
                               
                                2011-09-0616:22
                       
                        newMySort()这个是代表什么?
回复

使用道具 举报

千问 | 2011-11-4 06:17:30 | 显示全部楼层

回复

使用道具 举报

千问 | 2011-11-4 06:17:30 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行