function g2b( $instr ) {
$fp = fopen( 'test.txt', 'r' );
$len = strlen($instr);
for( $i = 0 ; $i < $len ; $i++ ) {
$h = ord($instr[$i]);
if( $h > 160 && $h < 248 ) {
$l = ord($instr[$i+1]);
if( $l > 160 && $l < 255 ) {
fseek( $fp, (($h-161)*94+$l-161)*3 );
$bg = fread( $fp, 2 );
}
else
$bg = '  ';
$instr[$i] = $bg[0];
$instr[$i+1] = $bg[1];
$i++;
}
}
fclose($fp);
return $instr;
}

解决方案 »

  1.   

    虽然不懂php,但看上去这个程序像是随机访问文件
      

  2.   


    import java.io.BufferedReader;
    import java.io.FileNotFoundException;
    import java.io.FileReader;
    import java.io.IOException;public class g2bTest {
        public static void main(String[] args) {
            System.out.println(g2b(new StringBuffer("aa")));
        }    public static String g2b(StringBuffer instr) {
            FileReader fr = null;
            BufferedReader br = null;
            try {
                fr = new FileReader("test.txt");
                br = new BufferedReader(fr);
                char[] bg = { ' ', ' ' };            int len = instr.length();
                for (int i = 0; i < len; i++) {
                    int h = (int) instr.charAt(i);
                    if ((h > 160) && (h < 248)) {
                        int l = (int) instr.charAt(i + 1);
                        if ((l > 160) && (l < 255)) {
                            br.read(bg, ((h - 161) * 94 + l - 161) * 3, 2);
                        } else {
                            bg[0] = ' ';
                            bg[1] = ' ';
                        }
                        instr.setCharAt(i, bg[0]);
                        instr.setCharAt(i + 1, bg[1]);
                        i++;
                    }
                }
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            } finally {
                try {
                    br.close();
                    fr.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }        }
            return instr.toString();
        }
    }你試試吧.
    我沒測試喲.