コード例 #1
0
ファイル: LogReader.cs プロジェクト: seafield1979/ULogView
        /**
         * バイナリログの画像ID情報を読み込む
         */
        private MemIconImages ReadLogImagesBin(UFileStream fs)
        {
            MemIconImages _images = new MemIconImages();

            // 件数取得
            int size = fs.GetInt32();

            for (int i = 0; i < size; i++)
            {
                // 1件分のログを取得
                MemIconImage image = new MemIconImage();

                // 名前
                image.Name = fs.GetSizeString();

                // 画像
                int imageSize = fs.GetInt32();
                if (imageSize > 0)
                {
                    byte[] byteImage = fs.GetBytes(imageSize);
                    image.SetByteImage(byteImage);
                }

                _images.Add(image);
            }

            return(_images);
        }
コード例 #2
0
ファイル: LogReader.cs プロジェクト: seafield1979/ULogView
        }  // GetEncoding()

        #endregion

        #region Binary

        /**
         * バイナリ形式のログファイルを読み込んでメモリに展開する
         * @input inputFilePath: ログファイルのパス
         * @output : true:成功 / false:失敗
         */
        private bool ReadLogFileBin(string inputFilePath)
        {
            using (var fs = new UFileStream(inputFilePath, FileMode.Open, FileAccess.Read))
            {
                try
                {
                    // データ判定部分をスキップ
                    fs.GetBytes(4);

                    // Header
                    ReadLogHeadBin(fs);

                    // Body
                    ReadLogBodyBin(fs);
                }
                catch (Exception e)
                {
                    Console.WriteLine("Error ReadLogFileBin " + e.Message);
                    throw;
                }
            }
            return(true);
        }