<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Linux Forum &mdash; Конвертирование символов]]></title>
		<link>https://linuxforum.ru/viewtopic.php?id=10854</link>
		<atom:link href="https://linuxforum.ru/extern.php?action=feed&amp;tid=10854&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Конвертирование символов».]]></description>
		<lastBuildDate>Mon, 21 Feb 2011 18:37:13 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=148115#p148115</link>
			<description><![CDATA[<p>Насколько я помню, я добавил конвертирование символов псевдографики<br />CP866&lt;-&gt;KOI8-R и эскпериментировал с буферизацией.</p><p>Пётр.</p>]]></description>
			<author><![CDATA[null@example.com (Peter)]]></author>
			<pubDate>Mon, 21 Feb 2011 18:37:13 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=148115#p148115</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=147885#p147885</link>
			<description><![CDATA[<p>Привет всем<br />Спаибо за код, Peter smile</p>]]></description>
			<author><![CDATA[null@example.com (DimonK)]]></author>
			<pubDate>Mon, 21 Feb 2011 08:17:03 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=147885#p147885</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=146736#p146736</link>
			<description><![CDATA[<p>Вот программа для конвертирования из одной из четырёх русских кодировок<br />в другую. Она старая, автор не я и его давно нет в RU.LINUX, я её тогда же<br />несколько модернизировал. Там при её вызове method - это два символа,<br />каждый - один из четырёх: w, k, a, i.<br />Воспользуйтесь програмой indent.</p><p>Пётр.</p><div class="codebox"><pre><code>#include &lt;stdio.h&gt;
//#include &lt;string.h&gt;
#include &lt;stdlib.h&gt;
#include &lt;ctype.h&gt;
#define sblk 4096
//#define BUFSIZ sblk
unsigned char t256[260];
unsigned char win[68]={
0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7,
0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF,
0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7,
0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF,
0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7,
0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF,
0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,
0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0xFF, 0xA8, 0xB8,0,0};
unsigned char alt[68]={
0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F,
0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
0x98, 0x99, 0x9A, 0x9B, 0x9C, 0x9D, 0x9E, 0x9F,
0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7,
0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF,
0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7,
0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, 0xF0, 0xF1,0,0};
unsigned char koi8[68]={
0xE1, 0xE2, 0xF7, 0xE7, 0xE4, 0xE5, 0xF6, 0xFA,
0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, 0xF0,
0xF2, 0xF3, 0xF4, 0xF5, 0xE6, 0xE8, 0xE3, 0xFE,
0xFB, 0xFD, 0xFF, 0xF9, 0xF8, 0xFC, 0xE0, 0xF1,
0xC1, 0xC2, 0xD7, 0xC7, 0xC4, 0xC5, 0xD6, 0xDA,
0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0,
0xD2, 0xD3, 0xD4, 0xD5, 0xC6, 0xC8, 0xC3, 0xDE,
0xDB, 0xDD, 0xDF, 0xD9, 0xD8, 0xDC, 0xC0, 0xD1, 0xB3, 0xA3,0,0};
unsigned char iso[68]={
0xB0, 0xB1, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7,
0xB8, 0xB9, 0xBA, 0xBB, 0xBC, 0xBD, 0xBE, 0xBF,
0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7,
0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF,
0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7,
0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF,
0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7,
0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, 0xA1, 0xF1,0,0};
unsigned char altkoi[130]={
0xE1, 0xE2, 0xF7, 0xE7, 0xE4, 0xE5, 0xF6, 0xFA,
0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, 0xF0,
0xF2, 0xF3, 0xF4, 0xF5, 0xE6, 0xE8, 0xE3, 0xFE,
0xFB, 0xFD, 0xFF, 0xF9, 0xF8, 0xFC, 0xE0, 0xF1,
0xC1, 0xC2, 0xD7, 0xC7, 0xC4, 0xC5, 0xD6, 0xDA,
0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0,
0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
0x88, 0x89, 0xBA, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F,
0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
0x98, 0x99, 0x9A, 0xBF, 0x9C, 0x9D, 0x9E, 0x9F,
0xA0, 0xA1, 0xA2, 0xB0, 0xA4, 0xA5, 0xA6, 0xA7,
0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF,
0xD2, 0xD3, 0xD4, 0xD5, 0xC6, 0xC8, 0xC3, 0xDE,
0xDB, 0xDD, 0xDF, 0xD9, 0xD8, 0xDC, 0xC0, 0xD1,
0xB3, 0xA3, 0xB2, 0xB1, 0xB4, 0xB5, 0xB6, 0xB7,
0xB8, 0xBC, 0x8A, 0xBB, 0x4E, 0xBD, 0xBE, 0x9B,0,0};
unsigned char koialt[130]={
0xB0, 0xB1, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, 0xB7,
0xB8, 0xB9, 0xFA, 0xBB, 0xBC, 0xBD, 0xBE, 0xBF,
0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7,
0xC8, 0xC9, 0xCA, 0xFF, 0xCC, 0xCD, 0xCE, 0xCF,
0xD0, 0xD1, 0xD2, 0xF1, 0xD4, 0xD5, 0xD6, 0xD7,
0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0xDF,
0xD3, 0xF3, 0xF2, 0xF0, 0xF4, 0xF5, 0xF6, 0xF7,
0xF8, 0xD0, 0xBA, 0xFB, 0xF9, 0xFD, 0xFE, 0xCB,
0xEE, 0xA0, 0xA1, 0xE6, 0xA4, 0xA5, 0xE4, 0xA3,
0xE5, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE,
0xAF, 0xEF, 0xE0, 0xE1, 0xE2, 0xE3, 0xA6, 0xA2,
0xEC, 0xEB, 0xA7, 0xE8, 0xED, 0xE9, 0xE7, 0xEA,
0x9E, 0x80, 0x81, 0x96, 0x84, 0x85, 0x94, 0x83,
0x95, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E,
0x8F, 0x9F, 0x90, 0x91, 0x92, 0x93, 0x86, 0x82,
0x9C, 0x9B, 0x87, 0x98, 0x9D, 0x99, 0x97, 0x9A,0,0};
int main( int argc, char *argv[] ){
unsigned char buf[sblk],bufin[sblk],bufout[sblk],*from,*to,uc; //,*t;
size_t size=sblk, nit=1;    //, rblr=0,rblw=0;
void *vbuf=(void*)buf;    //, *vbufin=(void*)bufin, *vbufout=(void*)bufout;
FILE *in, *out;fpos_t pos; long il; //, ic=99;
char cfr,cto;int i,j,ifr=8,ito=2,inm, nbl, nrm=0, nccl, nccm, isz=sblk; //,c;
/*struct time tcur;*/
if ( argc != 4 ){
fprintf(stderr,&quot;Usage: recsp &lt;method&gt; &lt;file-in&gt; &lt;file-out&gt;\n&quot; );exit(-1);}
for(uc=0;uc&lt;128;uc++)*(t256+uc)=uc;
cfr = (char)tolower (argv[1][0]);cto = (char)tolower (argv[1][1]);
switch(cfr){case &#039;a&#039;:ifr=0;from=alt;break;case &#039;k&#039;:ifr=8;from=koi8;break;
case &#039;w&#039;:ifr=64;from=win;break;case &#039;i&#039;:ifr=512;from=iso;break;
default: fprintf( stderr, &quot;wrong coding &#039;from&#039; method %c\n&quot;,cfr);exit(-1);}
switch(cto){case &#039;a&#039;:ito=0;to=alt;break;case &#039;k&#039;:ito=1;to=koi8;break;
case &#039;w&#039;:ito=2;to=win;break;case &#039;i&#039;:ito=3;to=iso;break;default: fprintf(stderr,
&quot;wrong coding &#039;to&#039; method %c\n&quot;,cto);exit(-1);}inm=ifr+ito;
if(inm==1||inm==8){switch(inm){case 1:from=altkoi;break;case 8:from=koialt;}
for(i=0;i&lt;128;i++)t256[128+i]=from[i];}else for(i=0;i&lt;66;i++)t256[from[i]]=to[i];
if ( ( in = fopen( argv[2], &quot;rb&quot; ) ) == NULL ){
fprintf(stderr, &quot;cannot open file &#039;%s&#039; for reading\n&quot;, argv[2] );exit(-1);}
if ( ( out = fopen( argv[3], &quot;wb+&quot; ) ) == NULL ){
fprintf(stderr, &quot;cannot open file &#039;%s&#039; for writing\n&quot;, argv[3] );exit(-1);}
fseek(in, 0L, SEEK_END); fgetpos( in, &amp;pos);fseek(in, 0L, SEEK_SET);
il = pos.__pos;nccm=nccl=nbl=il/sblk; nrm=il-nbl*sblk; if(nrm != 0)nccm++;
setvbuf(in,(char*)bufin,_IOFBF,sblk);setvbuf(out,(char*)bufout,_IOFBF,sblk);
/*gettime(&amp;tcur);
cprintf(&quot;\r\n%02d:%02d:%02d.%02d&quot;,tcur.ti_hour,tcur.ti_min,tcur.ti_sec,
tcur.ti_hund);*/
for(i=1; i&lt;=nccm; i++){  if(i &gt; nccl )size=isz=nrm;
/*for(j=0;j&lt;sblk;j++)*(buf+j)=42;*/
/*if(i==nccl)rblr=fread(pbuf,size,nit, in);*/
         /*rblr=*/
       fread(vbuf,size,nit, in); for(j=0; j&lt;isz; j++)*(buf+j)=*(t256+*(buf+j));
/*for(j=0; j&lt;isz; j++)*(buf+j)=*(t256+(int)*(buf+j));*/
/*for(j=0; j&lt;isz; j++){uc=*(bufin+j);*(bufout+j)=*(t256+uc);}*/
          /*  if(i==nccl)rblw=fwrite(pbuf,size,nit,out);*/
                 /*rblw=*/
           fwrite(vbuf,size,nit,out);
/*if(i == nccl)fflush(out);*/
/*if(i==nccl)cprintf(&quot;\n\r%3660s&quot;,buf);*/
/*cprintf(&quot;\n\r%6d%6d%6d%4d%4d%6d&quot;,i,isz,size,rblr,rblw,j);*/
}fflush(out);
/*gettime(&amp;tcur);
cprintf(&quot;\r\n%02d:%02d:%02d.%02d&quot;,tcur.ti_hour,tcur.ti_min,tcur.ti_sec,
tcur.ti_hund);*/
/*cprintf(&quot;\n\r%8ld%6d%6d%6d&quot;,il,nbl,nrm,nccm);*/
/* cprintf(&quot;\n\r%c %ld %c&quot;,cto, il, cfr); */
return 0;}

/* Григорий Шпаков */
/* grigory@sirena2000.ru &lt;mailto:grigory@sirena2000.ru&gt; */</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Peter)]]></author>
			<pubDate>Fri, 18 Feb 2011 15:14:56 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=146736#p146736</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=146188#p146188</link>
			<description><![CDATA[<p>Привет всем<br />Спс, drBatty&nbsp; smile <br /></p><div class="quotebox"><cite>Vascom пишет:</cite><blockquote><p>Может вы перейдёте в раздел рограммирование?</p></blockquote></div><p> - Хорошо. Вы можете ее туда отправить?</p>]]></description>
			<author><![CDATA[null@example.com (DimonK)]]></author>
			<pubDate>Thu, 17 Feb 2011 05:42:44 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=146188#p146188</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=145944#p145944</link>
			<description><![CDATA[<p>Может вы перейдёте в раздел программирование?</p>]]></description>
			<author><![CDATA[null@example.com (Vascom)]]></author>
			<pubDate>Wed, 16 Feb 2011 13:46:55 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=145944#p145944</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=145942#p145942</link>
			<description><![CDATA[<div class="quotebox"><cite>DimonK пишет:</cite><blockquote><p>Две входные строки: &quot;$01T100TEXT\n&quot; и &quot;$01T100ТЕКСТ\n&quot;, а значение<br />res = 0 в обоих случаях-?</p></blockquote></div><p>видимо в вашей строке 0 символов. так бывает, если в строке первый байт равен нулю (\0, а не &quot;ноль&quot;).<br />iconv() возвращает число символов которые обработаны. Кроме того, возможно, первым у вас затесался НЕСИМВОЛ. Несимволы встречаются лишь в UTF-8, и им не соответствуют никакие символы. (это мало вероятно, ибо у меня получается -1 в res, и errno == EILSEQ. читайте СВОЮ документацию).</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Wed, 16 Feb 2011 13:46:13 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=145942#p145942</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=145898#p145898</link>
			<description><![CDATA[<p>Привет всем.</p><p>Что-то не получается&nbsp; использовать коды(речь идет только о кириллице):<br />получаю код, а затем записываю его в определенный элемент массива char и затем отправляю его на устройство - кракозябра <img src="https://linuxforum.ru/img/smilies/ac.gif" alt="ac" />&nbsp; <br />Попробовал вариант с утилитой iconv - работает (я из отформатированного файла копирую строку и вставляю в прогу). Но это для меня не панацея - и другие проги формирую сигналки, а затем отправляют мне...</p><p>Две входные строки: &quot;$01T100TEXT\n&quot; и &quot;$01T100ТЕКСТ\n&quot;, а значение <br />res = 0 в обоих случаях-?<br /></p><div class="codebox"><pre><code>size_t res = iconv(cdout,&amp;in,&amp;numbin,&amp;bout,&amp;nbbout)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (DimonK)]]></author>
			<pubDate>Wed, 16 Feb 2011 11:57:58 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=145898#p145898</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=145197#p145197</link>
			<description><![CDATA[<p>Спасибо, drBatty smile <br />Попробуем...</p>]]></description>
			<author><![CDATA[null@example.com (DimonK)]]></author>
			<pubDate>Mon, 14 Feb 2011 16:56:48 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=145197#p145197</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=145028#p145028</link>
			<description><![CDATA[<p>да, наверное лучше убрать вообще все преобразования, и выводить байты как числа. </p><div class="codebox"><pre><code>printf(&quot;%X\t&quot;, buffer[i]);</code></pre></div><p>потом нагуглите таблицу символов. ЕМНИП буква &quot;я&quot; имеет код 0xFF в 1251</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Mon, 14 Feb 2011 09:54:39 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=145028#p145028</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=145017#p145017</link>
			<description><![CDATA[<div class="quotebox"><cite>DimonK пишет:</cite><blockquote><p>Суть проги такова: на устройстве сигнализации нажимается кнопка, я отсылаю команду codes[1] - чтение буфера клавы и считываю ответ<br />УС понимает CP1251 кодировку. Пробовал без перекодировки - ни чего. Решил что необходима кодировка...</p></blockquote></div><p>нет. перекодировка нужна если-бы были кракозябры.</p><p>для начала попробуйте в консоли<br /><div class="termtitle" style="font-family: sans-serif; position:relative; height:auto; width:auto; background:#3A4061; color:#FFFFFF; padding: 1px;"><b> Консоль:</b></div>
<div class="termcont" style="font-family: Terminus; position:relative; height:auto; width:auto; overflow-x:scroll; white-space: nowrap ; overflow-y:auto;background:#000000; color:#4EF44E; line-height:1.2; padding: 3px; font-size: 1rem; max-height: 60vh">cat /dev/ttyS0 | xxd</div></p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Mon, 14 Feb 2011 09:28:10 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=145017#p145017</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=144956#p144956</link>
			<description><![CDATA[<p>Привет всем <br />Спасибо,drBatty, за код smile </p><p>Суть проги такова: на устройстве сигнализации нажимается кнопка, я отсылаю команду codes[1] - чтение буфера клавы и считываю ответ<br />УС понимает CP1251 кодировку. Пробовал без перекодировки - ни чего. Решил что необходима кодировка... <br /></p><div class="codebox"><pre><code>#include &lt;stdio.h&gt;
#include &lt;stdlib.h&gt;
#include &lt;string.h&gt;
#include &lt;unistd.h&gt;
#include &lt;fcntl.h&gt;
#include &lt;errno.h&gt;
#include &lt;err.h&gt;
#include &lt;termios.h&gt;
#include &lt;iconv.h&gt;
#include &lt;libintl.h&gt;

int open_port(void);

char*codes[]=
{
    &quot;$01T100TEXT\r\n&quot;, 
    &quot;$01K\n&quot;, 
    &quot;$01T\n\r&quot; 
};

int main(int argc,char **argv)
{    
    char buffin[255];
    char buffout[50];
    
    char* bin = buffin;
    char* bout = buffout;
     
    int nbbin = sizeof(buffin);
    int nbbout = sizeof(buffout);
    
    iconv_t cdin  = iconv_open(&quot;UTF8&quot;,&quot;CP1251&quot;);
    iconv_t cdout = iconv_open(&quot;CP1251&quot;,&quot;UTF8&quot;);
    if ((cdin == (iconv_t)(-1)) &amp;&amp; (cdout == (iconv_t)(-1)))
    err(1,&quot;ICONV_OPEN&quot;);
        
    int fd=open_port();
        
    while(1)
    {
    int ch = getchar();
    if (ch == 27)
        break;
    
    char* code =  codes[0];
    char* in = code;
    int numbin = strlen(code);
    printf(&quot;numbin -%d\n&quot;,numbin);
    memset(&amp;buffout,0,sizeof(buffout));
    
    size_t res = iconv(cdout,&amp;in,&amp;numbin,&amp;bout,&amp;nbbout); 
    printf(&quot;%d\n&quot;,res);
    int siseofout = sizeof(bout);
    printf(&quot;sizeofout - %d\n&quot;,siseofout);
    size_t temp = nbbout;
    printf(&quot;in - %s\n&quot;,code);
    printf(&quot;bout - %d\n&quot;,temp);
    
    int n = write(fd,bout,nbbout);
    if (n &lt; 0)
        printf(&quot;write() failed!\n&quot;, stderr);
    else
        printf(&quot; n= %d  \n&quot;,n);
        
    /*/------------------------------------------------
    //int k = read(fd,buffin,nbbin);
        
    char banswer[255];
    int nbansw = sizeof(banswer);
    int k = read(fd,buffin,nbbin);
    printf(&quot;%s\n&quot;,banswer);
    size_t d = strlen(buffin);
    res = iconv(cdin,&amp;buffin,&amp;d,&amp;banswer,&amp;nbansw);
    printf(&quot;\nbuf1-%s\n&quot;,banswer);
    */    
                
    }

    iconv_close(cdin);
    iconv_close(cdout);
    close(fd);
    return(0);
}
                                                        
int  open_port(void)
{
    int fd;
    fd = open(&quot;/dev/ttyS0&quot;, O_RDWR | O_NOCTTY |O_NONBLOCK);
    if (fd == -1)
        perror(&quot;open_port: Unable to open /dev/ttyS0 - &quot;); 
    else
    {
    struct termios options; 
        tcgetattr(fd, &amp;options);
        cfsetispeed(&amp;options, B9600);
        cfsetospeed(&amp;options, B9600);
        options.c_cflag &amp;= ~PARENB; 
        options.c_cflag &amp;= ~CSTOPB;
        options.c_cflag &amp;= ~CSIZE;
        options.c_cflag |= CS8;
        tcsetattr(fd, TCSANOW, &amp;options);
    }
    //fcntl(fd, F_SETFL, 0);
    return (fd);
}                </code></pre></div>]]></description>
			<author><![CDATA[null@example.com (DimonK)]]></author>
			<pubDate>Mon, 14 Feb 2011 07:17:14 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=144956#p144956</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=144487#p144487</link>
			<description><![CDATA[<div class="quotebox"><cite>DimonK пишет:</cite><blockquote><p>- код ошибки&nbsp; - 0</p></blockquote></div><p>вы про что? про errno что-ли? дык там вообще всё что угодно может быть<br />дело в том, что errno устанавливается только после ошибке, а если всё хорошо, то там будет то-что было. в отличие от $?</p><p>вот вам пример (рабочий):<br /><a href="http://www.gnu.org/s/libc/manual/html_node/iconv-Examples.html">http://www.gnu.org/s/libc/manual/html_n … mples.html</a></p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Sun, 13 Feb 2011 09:45:50 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=144487#p144487</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=144478#p144478</link>
			<description><![CDATA[<p>Тогда тему в раздел Программирование надо отправить?</p>]]></description>
			<author><![CDATA[null@example.com (Vascom)]]></author>
			<pubDate>Sun, 13 Feb 2011 09:24:34 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=144478#p144478</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=144239#p144239</link>
			<description><![CDATA[<p><strong>DimonK</strong>, дайте полный код. я что, телепат?</p>]]></description>
			<author><![CDATA[null@example.com (drBatty)]]></author>
			<pubDate>Sat, 12 Feb 2011 18:53:21 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=144239#p144239</guid>
		</item>
		<item>
			<title><![CDATA[Re: Конвертирование символов]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=144213#p144213</link>
			<description><![CDATA[<div class="quotebox"><cite>Vascom пишет:</cite><blockquote><p>Конвертация iconv должна работать.<br />Показывай что и как ты конвертируешь, и какие ошибки при этом возникают.</p></blockquote></div><p> - ? <br />Видно я что-то не понимаю... Я ведь привел часть кода проги...<br />Прогнал прогу через отладчик и strace <br />После </p><div class="codebox"><pre><code>iconv_t cdout = iconv_open(&quot;CP1251&quot;,&quot;UTF8&quot;); </code></pre></div><p> - код ошибки&nbsp; - 0<br />После </p><div class="codebox"><pre><code>size_t res = iconv(cdout,&amp;in,&amp;numbin,&amp;bout,&amp;nbbout); </code></pre></div><p> - <br />код ошибки&nbsp; - 0, а strace, когда я отправляю bout на порт:<br /></p><div class="codebox"><pre><code>write(4,&quot;\0\0\0...&quot;...,37) = 37</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (DimonK)]]></author>
			<pubDate>Sat, 12 Feb 2011 18:07:51 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=144213#p144213</guid>
		</item>
	</channel>
</rss>
