Модераторы: korob2001, ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отправка строк UTF8 на сервер 
:(
    Опции темы
JamesMorgan
  Дата 12.10.2013, 11:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 35
Регистрация: 11.7.2011

Репутация: нет
Всего: 1



Привет всем,столкнулся с такой проблемой, читаю фаил который хранит в себе utf8 строки и создаю пакет для отправки, серверное приложение получает пакет но при декодировании получает такой результат: \0\0\0\0\0\0\0\0\0, может я не правильно строки utf8 с помощью pack кладу?
Код

use IO::Socket;
use Data::Dumper;


open (FILE,"D:\data.txt") or die "$!";


my $packet;
my $socket = IO::Socket::INET->new(PeerPort => '5540', PeerAddr => '127.0.0.1', Proto => 'tcp') or die "$!";

my $i = 0;
while (my $line = <FILE>) 
{
    chomp($line);
    my ($firstname,$lastname,) = split(';',$line);
    
        $packet .= pack("i1",length($firstname));
        $packet .= pack("U1",$firstname);
        $packet .= pack("i1",length($lastname));
        $packet .= pack("U1",$lastname);
        $i++; 
}


$socket->send($packet);


Длина приходит правильная а все остальное в таких вот нулях и слешах, можете сказать что я не так делаю? испробовал уже Encode, utf8 и т.д нечего не помогло
PM MAIL   Вверх
Pfailed
Дата 17.10.2013, 10:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 933
Регистрация: 19.7.2009

Репутация: 22
Всего: 39



Я бы сделал так
Код

pack("iia*a*", length($first), length($last), $first, $last);


Код

my @len = unpack("ii", $str);
my (undef, undef, $first, $last) = unpack(sprintf("iia%da%d", @len), $str);




--------------------
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0419 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.