字符集轉化 curses

2021-06-29 09:55:32 字數 2279 閱讀 6849

linux字串轉化使用方法

第一步:

iconv_open(目標字符集,源字符集)

第二步:

iconv()實現字符集轉化

第三步:

iconv_close()關閉iconv

命令:iconv --list

顯示系統中支援的字符集

//makefile

.suffixes: .c .o

cc=gcc

srcs=mydaemon.c

objs=$(srcs:.c=.o)

exec=mydaemon

all: $(objs)

$(cc) -o $(exec) $(objs)

@echo '-------------ok--------------'

.c.o:

$(cc) -g -o $@ -c $<

clean:

rm -f $(objs)

rm -f core*

#include #include #include #include #include #include int gbk2utf8(char *src, size_t *srclen, char *dest, size_t *destlen)

size_t rc = iconv(cd, &src, srclen, &dest, destlen);//將src字串轉化為目標dest

if (rc == (size_t)-1)

iconv_close(cd);

return 0;

}int main(int arg, char *args)

file *p = fopen(args[1], "r");

if (p == null)

char buf[1024];//定義乙個buffer,存放讀取到的檔案內容

char destbuf[1024];//定義乙個buffer,存放轉化完字串後的內容

while(1)

size_t srclen = strlen(buf);

size_t destlen = sizeof(destbuf);

gbk2utf8(buf, &srclen, destbuf, &destlen);

printf("%s\n", destbuf);

}fclose(p);

return 0;

}

執行:

在windows下面編輯乙個檔案,將檔案傳到linux上面之後,cat 檔案內容為亂碼。

curses是乙個在linux/unix下廣泛應用的

圖形函式庫.

linux下面安裝軟體的時候,會在螢幕的任意位置輸出字元,進行進度的顯示。

//makefile

.suffixes: .c .o

cc=gcc

srcs=curses.c

objs=$(srcs:.c=.o)

exec=mydaemon

all: $(objs)

$(cc) -o $(exec) $(objs) -lcurses

@echo '-------------ok--------------'

.c.o:

$(cc) -g -o $@ -c $<

clean:

rm -f $(objs)

rm -f core*

#include #include #include #include #include #include int main()

clear();//清除螢幕

sprintf(temp, "please input:");

mvaddstr(0, 0, temp);//在指定的座標列印

int i;

for (i=0; i<10; i++)

move(0, 13);//移動游標到指定座標

refresh();//重新整理螢幕,如果不重新整理螢幕,那麼mvaddstr和move將不生效

}endwin();//結束圖形模式

return 0;

}

執行:

字符集轉化 curses

linux字串轉化使用方法 第一步 iconv open 目標字符集,源字符集 第二步 iconv 實現字符集轉化 第三步 iconv close 關閉iconv 命令 iconv list 顯示系統中支援的字符集 makefile suffixes c o cc gcc srcs mydaemon...

Linux 字符集轉化

命令列 iconv list 檢視linux作業系統支援的字符集 iconv open 設定字符集轉化 iconv t iconv open const char tocode,const char fromcode 引數tocode目標字符集的字串 引數fromcode源字符集的字串 函式成功返回...

mysql字符集轉化關係

表的字符集 其實是字段的字符集 客戶端字符集 set names 的這個字符集 文字的字符集 可以理解為在web介面中的charset 這個字符集,或者是ssh terminal終端的字符集下輸入的文字的格式 有如下的關係 1 當表的字符集是gbk或者utf8時,客戶端和文字的字符集同時為gbk或者...