Re: google post
長田です。つづか、ないと思う(笑)。つづくなら、振ってください fj でも
どこでも。
fj.news. のどっかでも話題になってましたが、最近。
☆Subject: Re: sispri repure #9 (11/27)
In article <2c851203.0212020402.289d1eed@posting.google.com>
yutaka-o@fsinet.or.jp writes:
>> 日文です。
どうもです(笑)。
フォローしてなくてすみません。ねこまさんも。 m(..)m
#萌え付SFなのでは?とつっこみもいれたいとこ(謎)。:-p
IP 通るなら、 http://news.media.kyoto-u.ac.jp/public.html
のご利用はいかがでしょう?
どーしても読みたくてプログラム60分で作ってしまいました。
#Web の時代ですね。つくづくすごい時代だと痛感...
#いえ、jis0208.txt がなければ不可能だったということで。
適当に そのままコード化してみても、EUC でもJIS でもないので
>> ... 2377;みません(笑)。
たぶんこれは「(笑)」だろう。もしかして UTF-8 (と fj.* でみたような)
で、Web検索してみたら、見事に一致。というわけで、急拠
conveuc関数を追加(笑)。 UTF-8 じゃなければ、20分で出来たプログラム。
せっかくだから添付しちゃいます。 今つくったから pds ですぅ。
#世の中に同じのあると思いますが...
高速化したいですが、遅くなかったのでダサダサ変換(汗)。
# sparc 100MHz でも結構速いデス!
#関係ないけど、知人の子供が学校から持ってきたちらし
#に「テニス預金デス!」とかあって受けまくってる私。
ここから~
#include "google.h"
main()
{ int cbak;
int cin;
/* 手抜きしてるので &# という通常文章は消えます */
while(1)
{ cin= getchar();
if(cin<0) break;
if('&' == cin)
{ cbak= cin; cin = getchar();
if('#' == cin)
{ print2byte();
continue;
}
putchar(cbak);
}
putchar(cin);
}
}
print2byte()
{
char cbuf[256];
int cin,ip,icha;
ip= 0;
while(1)
{
cin = getchar();
if(';'== cin) break;
/* こ */
if((cin < '0') || cin > '9')
{ puts("ERR"); return(1);
}
cbuf[ip]= cin; ip++;
}
cbuf[ip]= 0;
sscanf(cbuf,"%d",&icha);
icha= conveuc(icha);
icha+= 0x8080; /* to euc */
putchar(icha>>8);
putchar(icha&0xff);
}
conveuc(icha)
int icha;
{ int ii;
for(ii= 0; ii<7000 ;ii++)
{ if(!iconv[ii][1]) break;
if(icha== iconv[ii][1]) return(iconv[ii][0]);
}
return('E'<<8 | 'R');
}
ここから google.h の先頭、最後です
/* 次の Unicode テーブルを Web で拾って加工しました */
/* jis0208.txt */
/* # Name: JIS X 0208 (1990) to Unicode */
/* # Unicode version: 1.1 */
/* # Authors: Glenn Adams */
int iconv[7000][2]=
{
{ 0x2121,0x3000 } ,
{ 0x2122,0x3001 } ,
{ 0x2123,0x3002 } ,
{ 0x2124,0xFF0C } ,
{ 0x2125,0xFF0E } ,
略
{ 0x7423,0x9059 } ,
{ 0x7424,0x7464 } ,
{ 0x7425,0x51DC } ,
{ 0x7426,0x7199 } ,
{ 0, 0 }
};
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735