Я создаю клиента с использованием C#, Visual Studio 2010 и Zoom.net для получения данных с сервера Z39.50, но получаю нечитаемый ответ.Z39.50 Непрочитанный ответ с сервера
Я заметил, что ответ содержит цифры, подобные этому response, но содержание каждой строки в некоторых местах не читается. Я думаю, проблема заключается только в словах, написанных на языке, отличном от английского, и результат для этих конкретных слов приходит к цифрам или странным символам. Вот file с ответом массива байтов.
Этот снимок экрана является ответом на моего клиента.
Вот мой код:
class Program
{
static void Main(string[] args)
{
try
{
using (var con = new Connection("url", port))
{
con.DatabaseName = "<name here>";
con.Syntax = Zoom.Net.RecordSyntax.GRS1;
var query = "@attr 1=21 @attr 2=3 @attr 3=3 @attr 4=2 " +
"@attr 5=100 @attr 6=1 \"John\"";
var results = con.Search(q);
for (uint i = 0; i < results.Size; i++)
{
string temp = Encoding.UTF8.GetString(results[i].Content);
}
}
}
catch(Exception exc)
{
Console.WriteLine(exc.Message);
Console.Read();
}
}
}
Мне любопытно, когда вы запускаете этот код, вы шагнули через код ..? если да, то можете ли вы указать, какая строка в коде, что ошибка генерируется/сгенерирована ..? [C# Zoom.Net] (http://jai-on-asp.blogspot.com/2010/01/z3950-client -in-cnet-using-zoomnet-and.html) – MethodMan
В какой библиотеке происходит соединение? Что говорит о его использовании в документации? Вы уверены, что ответ UTF-8? В каком формате вы ожидаете ответа? – CodeCaster
Это строка, на которую я вхожу, и я вижу этот ответ. string temp = Encoding.UTF8.GetString (результаты [i] .Content); Библиотека, из которой происходит соединение, - Zoom.Net. – Apostolos