Example #1
0
        private void BtnAddPathClick(object sender, EventArgs e)
        {
            var pObj = new PathObject();

            pObj.ID = int.Parse(txtPathID.Text);

            pObj.NameLen = 0;
            pObj.Name = Encoding.Default.GetBytes(txtPath.Text);

            _path.Add(pObj);

            listPath.Items.Add(new ListViewItem(new[]
            {
                pObj.ID.ToString(CultureInfo.InvariantCulture),
                txtPath.Text
            }));

            listPath.Items[listPath.Items.Count - 1].EnsureVisible();
        }
Example #2
0
        private void BtnOpenFileClick(object sender, EventArgs e)
        {
            var open = new OpenFileDialog();
            open.Filter = "Path File (*.data)|*.data|All Files (*.*)|*.*";
            open.Title = "Open Path.data/DynamicObjects.data File";
            open.FileName = "path.data";

            if (open.ShowDialog() != DialogResult.OK || !File.Exists(open.FileName))
                return;

            var stream = File.OpenRead(open.FileName);
            var br = new BinaryReader(stream);

            Cursor = Cursors.WaitCursor;

            _header = br.ReadBytes(4);
            _count = br.ReadInt32();

            msg.Text = "Total: " + _count.ToString(CultureInfo.InvariantCulture) + " records found.";

            for (var i = 0; i < _count; i++)
            {
                var pObj = new PathObject();

                pObj.ID = br.ReadInt32();
                pObj.NameLen = br.ReadInt32();
                pObj.Name = br.ReadBytes(pObj.NameLen);

                _path.Add(pObj);

                listPath.Items.Add(new ListViewItem(new[]
                {
                    pObj.ID.ToString(CultureInfo.InvariantCulture),
                    Encoding.GetEncoding("GBK").GetString(pObj.Name)
                }));

                listPath.Items[listPath.Items.Count - 1].EnsureVisible();
            }

            br.Dispose();
            stream.Dispose();
            open.Dispose();
            Cursor = Cursors.Default;
        }