本帖最后由 1291500406 于 2022-7-4 13:49 编辑
 - (defun BB-str-ToSBC (str)
- (vl-list->string
- (apply 'append
- (mapcar
- '
- (lambda
- (x)
- (cond
- ((= x 32)'(161 161))
- ((<= 33 x 125)(list 163 (+ x 128)))
- ((= x 126)(list 161 171))
- (t (list x))
- )
- )
- (vl-string->list str)
- )
- )
- )
- )
- (BB-str-ToSBC "我爱你I LOVE YOU i love you 1314520")
- ;"我爱你I LOVE YOU i love you 1314520"
 - (defun BB-str-ToDBC (str / lst c)
- (setq lst(vl-string->list str ))
- (setq c 0)
- (vl-list->string
- (vl-remove nil
- (mapcar
- '
- (lambda
- (a )
- (setq lst (cdr lst))
- (cond
- ((and(= a 161)(= (car lst) 161) )(setq c 1)32)
- ((and(= a 163)(<= 161 (car lst) 253)) (setq c 1)(- (car lst) 128))
- ((and(= a 161) (= (car lst) 171) )(setq c 1)126)
- (t
- (IF (zerop c)
- (progn
- (setq c 0)
- a
- )
- (progn
- (setq c 0)
- nil
- )
- )
- )
- )
- )
- lst
- )
- )
- )
- )
- (BB-str-ToDBC "我爱你I LOVE YOU i love you 1314520")
- ;"我爱你I LOVE YOU i love you 1314520"
|