#android #xamarin #bzip2
#Android #xamarin #bzip2
Вопрос:
Я пытаюсь прочитать из файла, и я хочу использовать Bzip2InputStream для этого. Когда я пытаюсь запустить свое приложение, оно работает нормально, пока код не достигнет создания inputstream. В какой момент он продолжает работать, но ничего не происходит, и примерно каждую секунду вывод приложения считывается:
[Mono] GC_MINOR: (Nursery full) pause 5.67ms, total 6.16ms, bridge 0.00ms promoted 192K major 1152K los 1075K
Есть ли альтернативы, о которых я не знаю? Я делаю что-то глупое? Спасибо за любую помощь!
Код выглядит следующим образом.
using Ionic.BZip2;
namespace ActionBarTest
{
public class CoverageElement
{
}
public class Coverages
{
private List<string> ChartNames = new List<string> ();
private List<CoverageElement> m_Coverages;
private BZip2InputStream bz2Stream;
public Coverages(Stream compressedCoverage)
{
try{
bz2Stream = new Ionic.BZip2.BZip2InputStream(compressedCoverage);
}
catch (Exception error){
}
using (BinaryReader b = new BinaryReader (bz2Stream)) {
int t1 = b.ReadInt32 ();
Console.WriteLine ("krøll i binaryreader" t1);
int noOfElements = b.ReadInt32 ();
for (int i = 0; i < noOfElements; i ) {
char[] t = b.ReadChars (8);
ChartNames.Add (new string (t));
}
}
}
}
}
Комментарии:
1. Я узнал ответ: вместо отправки потока непосредственно из результата webclient мне нужно было создать memorystream из результата webclient и использовать его.
2. Отправьте это как ответ и примите его.
Ответ №1:
Я узнал ответ: вместо отправки потока непосредственно из результата webclient мне нужно было создать memorystream из результата webclient и использовать его.
Ответ №2:
Вам нужно создать memorystream из результата webclient и использовать его. Вы не можете просто отправить поток непосредственно из результата webclient. Потоки памяти всегда помогают, и это облегчает чтение, а иногда и вообще является ключом к выполнимости.