linux utf8转gb2312 声音播放脚本

原创 2012年03月26日 09:46:35
char* utf8_to_gb2312(char* inbuf)
{
  int inlen = strlen(inbuf);
  iconv_t cd = iconv_open("gb2312", "utf-8");
  if ((iconv_t)-1 == cd)
    {
      perror("iconv_open"); return NULL;
    }
  char *outbuf = (char *)malloc(inlen * 4 );
  bzero( outbuf, inlen * 4);
  char *in = inbuf;
  char *out = outbuf;
  size_t outlen = inlen *4;
  iconv(cd, &in, (size_t *)&inlen, &out,&outlen);
  outlen = strlen(outbuf);
  //printf("%s\n",outbuf);
  //free(outbuf);
  iconv_close(cd);
  return outbuf;
}

void show_cdu(char* buf)
{
  char* inbuf = buf;
  char* outbuf = utf8_to_gb2312(inbuf);
  CDisp_Clr_688_3();
  CDisp_Setfont_688_3(1);
  CDisp_Set_Abs_XY_688_3(1,1);
  CDisp_String_688_3((unsigned char*)outbuf);
  CDisp_Start_688_3();
  free(outbuf);
  return;
}
下面是播放声音的脚本:
#!/bin/bash

par1=`tr  '[a-z]' '[A-Z]' <<< "$1"`

if [ $par1 = "PLAY" ]
then
/cqcp/bin/pSound -r 48000 -b 8 -c 2 -f /cqcp/resources/succ.wav
fi

if [ $par1 = "STOP" ]
then
    tpid=`ps -ef | grep succ.wav | grep -v grep | awk '{print $2}'`
    kill -9 $tpid
fi

if [ $par1 = "VOL" ]
then
    echo $2 > mute
    if [ $2 -eq 0 ]; then
        amixer set Master 0% mute
    else
        amixer set Master $2% unmute
    fi
#./playSound dd.wav

#system("play xxx.wav");
#cat file /dev/dsp
#system("aumix xxxxxx")
fi


                

linux GB2312转UTF-8 shell脚本

#!/bin/bash IFSBACKUP=$IFS #备份IFS变量 IFS=$(echo -en "\n\b") #设置IFS变量不含空格,防止文件名中有空格时出现异常 ...
  • imred
  • imred
  • 2014年11月09日 17:03
  • 2874

Linux utf8与gb2312转换函数

Linux下GB2312与UTF8相互转换直接有接口调用的,调用的接口iconv_open #include    iconv_t iconv_open (const char* tocod...
  • newfelen
  • newfelen
  • 2014年05月25日 22:21
  • 605

(c语言)gb2312和utf8转换

(c语言)unicode和utf8转换 unicode和utf8转换规则 unicode与gb2312有着转换表 所以,只需要unicode和utf8之间进行转换即可 ...
  • I_study_ing
  • I_study_ing
  • 2017年03月14日 23:42
  • 1258

真正UTF-8与GB2312间的转换(兼容windows和Linux)

                                                       UTF-8与GB2312间的转换                             ...
  • alexaroma
  • alexaroma
  • 2008年05月10日 16:31
  • 1973

URL链接中汉字乱码转UTF-8和gb2312

在使用URL向服务器提交数据的时候,如果我们提交的数据中存在汉字,就会出现下列情况 http://192.168.11.22/cgi-bin/serial.cgi?type=text&text=%C...
  • u011037149
  • u011037149
  • 2016年04月02日 18:45
  • 1214

C++ UTF8 编码转换 GB2312

void UTF_8ToUnicode(wchar_t* pOut,char *pText) { char* uchar = (char *)pOut; uchar[1] = ((p...
  • shen_wei
  • shen_wei
  • 2012年08月01日 16:15
  • 7393

c++ gb2312 utf8 转换函数

这里两个函数实现GB2313与UTF8格式的互转,主要用于VC++在获取网页内容时解决乱码问题,因为VC++默认字符集是GB2312的,一般中文网站可能返回的是UTF-8编码,所以可以用U2G函数进行...
  • u014436243
  • u014436243
  • 2017年08月18日 20:39
  • 210

UTF8和GB2312的相互转换

char* G2U(const char* gb2312) { int len = MultiByteToWideChar(CP_ACP, 0, gb2312, -1, NULL, 0); wch...
  • yzf279533105
  • yzf279533105
  • 2016年02月21日 18:48
  • 280

Gb2312及Gb2312转Utf-8编码的UrlEncode编码解码(全)

为了一个gb2312下post中文参数到utf-8页面的程序,随闷的难受,查了一下午资料,大部分是讲Gb2312传到Gb2312页面的UrlEncode,没有提供到Utf-8页面的UrlEncode,...
  • gzlightning
  • gzlightning
  • 2008年04月13日 02:22
  • 6123

在Java中将数据由UTF8转换成GB2312格式

转自;http://www.ltesting.net/ceshi/ruanjianceshikaifajishu/rjcskfyy/java/2008/0513/154075.html 关键...
  • Manketon
  • Manketon
  • 2015年02月09日 09:16
  • 835
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:linux utf8转gb2312 声音播放脚本
举报原因:
原因补充:

(最多只允许输入30个字)