Read() public méthode

public Read ( byte array, int offset, int count ) : int
array byte
offset int
count int
Résultat int
        public static DateTime GetBuildDateTime()
        {
            var assembly = Assembly.GetCallingAssembly();

            if (File.Exists(assembly.Location))
            {
                var buffer = new byte[Math.Max(Marshal.SizeOf(typeof (_IMAGE_FILE_HEADER)), 4)];
                using (var fileStream = new FileStream(assembly.Location, FileMode.Open, FileAccess.Read))
                {
                    fileStream.Position = 0x3C;
                    fileStream.Read(buffer, 0, 4);
                    fileStream.Position = BitConverter.ToUInt32(buffer, 0); // COFF header offset
                    fileStream.Read(buffer, 0, 4); // "PE\0\0"
                    fileStream.Read(buffer, 0, buffer.Length);
                }
                var pinnedBuffer = GCHandle.Alloc(buffer, GCHandleType.Pinned);
                try
                {
                    var coffHeader = (_IMAGE_FILE_HEADER) Marshal.PtrToStructure(pinnedBuffer.AddrOfPinnedObject(), typeof (_IMAGE_FILE_HEADER));
                    return TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1) + new TimeSpan(coffHeader.TimeDateStamp*TimeSpan.TicksPerSecond));
                }
                finally
                {
                    pinnedBuffer.Free();
                }
            }
            return new DateTime();
        }
        /**
         * Constructor
         *
         * @param file the file
         * @param propertySet the property set to read
         * @param os the output stream
         * @exception IOException
         * @exception BiffException
         */
        public PropertySetsReader(FileInfo file, string propertySet, TextWriter os)
        {
            //writer = new BufferedWriter(new OutputStreamWriter(os));
            Stream fis = new FileStream(file.Name,FileMode.Open,FileAccess.Read);

            int initialFileSize = 1024 * 1024; // 1mb
            int arrayGrowSize = 1024 * 1024;// 1mb

            byte[] d = new byte[initialFileSize];
            int bytesRead = fis.Read(d,0,d.Length);
            int pos = bytesRead;

            while (bytesRead != -1)
                {
                if (pos >= d.Length)
                    {
                    // Grow the array
                    byte[] newArray = new byte[d.Length + arrayGrowSize];
                    Array.Copy(d, 0, newArray, 0, d.Length);
                    d = newArray;
                    }
                bytesRead = fis.Read(d, pos, d.Length - pos);
                pos += bytesRead;
                }

            bytesRead = pos + 1;

            compoundFile = new CompoundFile(d, new WorkbookSettings());
            fis.Close();

            if (propertySet == null)
                displaySets(os);
            else
                displayPropertySet(propertySet, os);
        }
        public bool TryReadRom(FileStream rom, out string RomId, out string RomType)
        {
            // .N64 file header
            // 0x20-0x33 - Game Name
            // 0x34-0x38 - Null

            RomId = null;
            RomType = null;

            byte[] magicNumberArry = new byte[8];
            rom.Position = 0x34;
            rom.Read(magicNumberArry, 0, 5);
            long magicNumber = BitConverter.ToInt64(magicNumberArry, 0);
            if(magicNumber != 0)
            {
                return false;
            }

            RomType = "Nintendo 64";
            byte[] romIdArray = new byte[20];
            rom.Position = 0x20;
            rom.Read(romIdArray, 0, 20);
            RomId = Encoding.ASCII.GetString(romIdArray).TrimEnd('\0');

            return true;
        }
Exemple #4
0
        public void ZipFile(string FileToZip, string ZipedFile, int CompressionLevel, int BlockSize)
        {
            //如果文件没有找到,则报错
            if (!System.IO.File.Exists(FileToZip))
            {
                throw new System.IO.FileNotFoundException("The specified file " + FileToZip + " could not be found. Zipping aborderd");
            }

            System.IO.FileStream StreamToZip = new System.IO.FileStream(FileToZip, System.IO.FileMode.Open, System.IO.FileAccess.Read);
            System.IO.FileStream ZipFile = System.IO.File.Create(ZipedFile);
            ZipOutputStream ZipStream = new ZipOutputStream(ZipFile);
            ZipEntry ZipEntry = new ZipEntry("ZippedFile");
            ZipStream.PutNextEntry(ZipEntry);
            ZipStream.SetLevel(CompressionLevel);
            byte[] buffer = new byte[BlockSize];
            System.Int32 size = StreamToZip.Read(buffer, 0, buffer.Length);
            ZipStream.Write(buffer, 0, size);
            try
            {
                while (size < StreamToZip.Length)
                {
                    int sizeRead = StreamToZip.Read(buffer, 0, buffer.Length);
                    ZipStream.Write(buffer, 0, sizeRead);
                    size += sizeRead;
                }
            }
            catch (System.Exception ex)
            {
                throw ex;
            }
            ZipStream.Finish();
            ZipStream.Close();
            StreamToZip.Close();
        }
        private Stream LocateCode()
        {
            var fileName = System.Reflection.Assembly.GetExecutingAssembly().Location;
            using(var fs = new FileStream(fileName, FileMode.Open, FileAccess.Read))
            {
                const int SIGN_SIZE = 8;
                fs.Position = fs.Length - SIGN_SIZE;
                byte[] signature = new byte[SIGN_SIZE];
                fs.Read(signature, 0, SIGN_SIZE);

                if (signature[0] == 0x4f && signature[1] == 0x53 && signature[2] == 0x4d && signature[3] == 0x44)
                {
                    int codeOffset = BitConverter.ToInt32(signature, 4);
                    long codeLen = fs.Length - codeOffset - SIGN_SIZE;

                    fs.Seek(codeOffset, SeekOrigin.Begin);
                    byte[] code = new byte[codeLen];
                    fs.Read(code, 0, (int)codeLen);
                    var ms = new MemoryStream(code);

                    return ms;
                }
                else
                {
                    throw new InvalidOperationException("No module found");
                }

            }
        }
Exemple #6
0
        /*
         *
        ushort MachoNetVersion = 320;
        double EVEVersionNumber = 7.31;
        int EVEBuildVersion = 360229;
        string EVEProjectCodename = "EVE-EVE-TRANQUILITY";
        string EVEProjectRegion = "ccp";
        string EVEProjectVersion = "EVE-EVE-TRANQUILITY@ccp";
         */
        static void Main()
        {
            byte GzipMarker = 126; // 0x7E
            // Has 60 bytes worth of raw packet data
            FileStream stream = new FileStream("ExportedStamp", FileMode.Open);
            int PacketLengthMarker = 0;
            ushort Machonet = 0;

            // Resize for Int32 Buffer
            byte[] buffer = new byte[4];
            stream.Read(buffer, 0, 4);
            // It's a packet length in worth of data (Purpose of GZip,
            // otherwise it'd be retarded since TCP protocol already covered that.)
            PacketLengthMarker = BitConverter.ToInt32(buffer, 0);

            // Gzip Stream isn't necessary, because it already extracted via 7E marker.
            //var fixStream = new DeflateStream(stream, CompressionMode.Decompress);
            stream.Read(buffer, 0, 1); // This is 7E marker

            stream.Read(buffer, 0, 4); // This is the unknown marker that occupy 4 bytes of the marshal stream

            buffer = new byte[2];
            stream.Read(buffer, 0, 2);
            Machonet = BitConverter.ToUInt16(buffer, 0);
            //Machonet = BitConverter.ToUInt16(buffer, 0);
            Console.WriteLine("Packet Size: " + PacketLengthMarker);
            Console.WriteLine("Machonet: " + Machonet);
            Console.ReadLine ();
        }
        public int UploadWebDavFile(string _WebFileUrl, string _LocalFile, string _UserName, string _Password)
        {
            try
            {
                System.Net.HttpWebRequest req = (System.Net.HttpWebRequest)WebRequest.Create(_WebFileUrl);  //Http和服务器交互
                req.Credentials = new NetworkCredential(_UserName, _Password); //验证密码
                req.PreAuthenticate = true;
                req.Method = "PUT";//采用PUT方式
                req.AllowWriteStreamBuffering = true;

                Stream reqStream = req.GetRequestStream();
                FileStream rdm = new FileStream(_LocalFile, FileMode.Open); //打开本地文件流

                byte[] inData = new byte[4096];
                int byteRead = rdm.Read(inData, 0, inData.Length);  //二进制读文件
                while (byteRead > 0)
                {
                    reqStream.Write(inData, 0, byteRead); //响应流写入
                    byteRead = rdm.Read(inData, 0, inData.Length);
                }
                rdm.Close();
                reqStream.Close();

                req.GetResponse(); //提交
            }
            catch
            {
                return 0;
            }
            return 1; //正确返回
        }
Exemple #8
0
 public void ZipFile(string FileToZip, string ZipedFile, int CompressionLevel, int BlockSize)
 {
     if (!File.Exists(FileToZip))
     {
         throw new FileNotFoundException("The specified file " + FileToZip + " could not be found. Zipping aborderd");
     }
     FileStream fileStream = new FileStream(FileToZip, FileMode.Open, FileAccess.Read);
     FileStream baseOutputStream = File.Create(ZipedFile);
     ZipOutputStream zipOutputStream = new ZipOutputStream(baseOutputStream);
     ZipEntry entry = new ZipEntry("ZippedFile");
     zipOutputStream.PutNextEntry(entry);
     zipOutputStream.SetLevel(CompressionLevel);
     byte[] array = new byte[BlockSize];
     int num = fileStream.Read(array, 0, array.Length);
     zipOutputStream.Write(array, 0, num);
     try
     {
         while ((long)num < fileStream.Length)
         {
             int num2 = fileStream.Read(array, 0, array.Length);
             zipOutputStream.Write(array, 0, num2);
             num += num2;
         }
     }
     catch (Exception ex)
     {
         throw ex;
     }
     zipOutputStream.Finish();
     zipOutputStream.Close();
     fileStream.Close();
 }
        // ----- ----- ----- PRIVATE ----- ----- -----
        private void LoadUnits(string dir, List<UnitData> list,
            bool createMaster, bool createCommon, bool createUnique)
        {
            string filePath = Path.Combine(dir, "CharacterData");
            using (var file = new FileStream(filePath, FileMode.Open, FileAccess.Read))
            using (var reader = new BinaryReader(file)){
                reader.ReadInt32();     // 0x8C == 140固定?
                int charaEndNum = reader.ReadInt32();
                int masterEndNum = reader.ReadInt32();
                int commonEndNum = reader.ReadInt32();
                int uniqueEndNum = reader.ReadInt32();

                if (createMaster) {
                    int count = masterEndNum - 1;
                    var buff = new byte[count * UNIT_SIZE];
                    file.Read(buff, OFFSET, buff.Length);
                    var m = new MemoryStream(buff);
                }
                if (createMaster) {
                    int count = commonEndNum - masterEndNum;
                    var buff = new byte[count * UNIT_SIZE];
                    file.Read(buff, OFFSET + masterEndNum * UNIT_SIZE, buff.Length);
                    var m = new MemoryStream(buff);
                }
                if (createMaster) {
                    int count = uniqueEndNum - commonEndNum;
                    var buff = new byte[count * UNIT_SIZE];
                    file.Read(buff, OFFSET + commonEndNum * UNIT_SIZE, buff.Length);
                    var m = new MemoryStream(buff);
                }
            }
        }
Exemple #10
0
        //WriteRIFFStream
        // Function to read a 16 bit/sample mono wave file and return intSampleRate and the sampled data in bytWaveData()
        public bool ReadRIFF(string strFilename, ref int intSampleRate, ref byte[] bytWaveData)
        {
            // returns true if successful, false if not. intSampleRate and bytWaveData updated by reference
            if (!System.IO.File.Exists(strFilename))
                return false;
            try {
                FileStream fs = new FileStream(strFilename, FileMode.Open);
                byte[] bytHeader = new byte[46];
                fs.Read(bytHeader, 0, 46);
                int intFmtChunkLength = System.BitConverter.ToInt32(bytHeader, 16);
                intSampleRate = System.BitConverter.ToInt32(bytHeader, 24);
                int intDataBytes = 0;
                byte[] bytBuffer = new byte[-1 + 1];
                if (intFmtChunkLength == 16) {
                    intDataBytes = System.BitConverter.ToInt32(bytHeader, 40);
                    bytBuffer = new byte[intDataBytes + 44];
                    fs.Read(bytBuffer, 0, intDataBytes + 44);
                    bytWaveData = new byte[intDataBytes];
                    Array.Copy(bytBuffer, 44, bytWaveData, 0, intDataBytes);
                } else if (intFmtChunkLength == 18) {
                    intDataBytes = System.BitConverter.ToInt32(bytHeader, 42);
                    bytBuffer = new byte[intDataBytes + 46];
                    fs.Read(bytBuffer, 0, intDataBytes + 46);
                    bytWaveData = new byte[intDataBytes];
                    Array.Copy(bytBuffer, 46, bytWaveData, 0, intDataBytes);
                }
                fs.Close();

            } catch {
                return false;
            }
            return true;
        }
Exemple #11
0
        public void Decrypt(string filename)
        {
            FileStream fsInput = new FileStream(filename, FileMode.Open, FileAccess.Read);
            FileStream fsOutput = new FileStream(filename + ".crypt", FileMode.Create, FileAccess.Write);
            AesCryptoServiceProvider Aes = new AesCryptoServiceProvider();

            Aes.KeySize = 128;

            byte[] input = new byte[256];

            int count = fsInput.Read(input, 0, 256);
            Aes.Key = _algorithm_asym.Decrypt(input, false);
            count = fsInput.Read(input, 0, 256);
            Aes.IV = _algorithm_asym.Decrypt(input, false);

            ICryptoTransform desencrypt = Aes.CreateDecryptor();
            CryptoStream cryptostream = new CryptoStream(fsOutput, desencrypt, CryptoStreamMode.Write);

            byte[] bytearrayinput = new byte[fsInput.Length - 1];
            fsInput.Read(bytearrayinput, 0, bytearrayinput.Length);
            cryptostream.Write(bytearrayinput, 0, bytearrayinput.Length);

            fsInput.Close();
            fsOutput.Close();
        }
Exemple #12
0
        public void Open()
        {
            FirmwareSection i = 0;

            //Get the header and base page
            var stream = new FileStream(_fileName, FileMode.Open);
            var @base = GetSection(FirmwareSection.Base);
            stream.Read(_header, 0, _header.Length);
            stream.Read(@base, 0, @base.Length);

            //Read in all the sections
            while ((stream.Length - stream.Position) > 0x200)
            {
                var data = new byte[0x4000];
                stream.Read(data, 0, data.Length);
                _sections.Add(i++, data);
            }

            //If we have a footer, read it in
            if ((stream.Length - stream.Position) == 0x200)
            {
                _footer = new byte[0x200];
                stream.Read(_footer, 0, _footer.Length);
            }

            //All done
            stream.Close();
        }
        internal bool InitializeSizeAndName(FileStream fs)
        {
            this.Buffer = new byte[8];
            int bytesRead = fs.Read(this.Buffer, 0, this.Buffer.Length);
            if (bytesRead < this.Buffer.Length)
            {
                return false;
            }

            this.Size = this.GetUInt(0);
            this.Name = this.GetString(4, 4);

            if (this.Size == 0)
            {
                this.Size = (ulong)(fs.Length - fs.Position);
            }

            if (this.Size == 1)
            {
                bytesRead = fs.Read(this.Buffer, 0, this.Buffer.Length);
                if (bytesRead < this.Buffer.Length)
                {
                    return false;
                }

                this.Size = this.GetUInt64(0) - 8;
            }

            this.Position = ((ulong)fs.Position) + this.Size - 8;
            return true;
        }
Exemple #14
0
        private void frmRegHis_Load(object sender, EventArgs e)
        {
            try
            {
                string strRegAllInfo = File.ReadAllText(strRegKeyFile);


                PzCompression pzCom = PzCompressionHelper.getPzCompression(CompressionType.GZip);
                int nIdx = 0;

                byte[] byTmp;
                using (FileStream fsReg = new FileStream(strRegKeyFile, FileMode.Open, FileAccess.Read))
                {
                    while (true)
                    {
                        byTmp = new byte[4];
                        if (fsReg.Read(byTmp, 0, 4) < 1) break;

                        int nLen = BitConverter.ToInt32(byTmp, 0);
                        byTmp = new byte[nLen];
                        fsReg.Read(byTmp, 0, nLen);

                        textBox1.Text += Encoding.Unicode.GetString(pzCom.DeCompress(byTmp)) + "\r\n";

                        nIdx++;
                    }
                }
                label1.Text = string.Format("共授权完成{0}台机器", nIdx);
            }
            catch (Exception ex)
            {
            }
        }
Exemple #15
0
        /// <summary>
        /// 获取文件MD5
        /// </summary>
        /// <param name="filePath"></param>
        /// <param name="type"></param>
        /// <returns></returns>
        public static string getMd5Hash(string filePath, int type)
        {
            string smd5 = filePath;
            try
            {
                using (FileStream t = new FileStream(filePath, FileMode.Open))
                {
                    int l = 1024;
                    long l1 = t.Length / 3;
                    long l2 = t.Length / 2;
                    if (l1 < l)
                    {
                        l = (int)l1;
                    }
                    byte[] begin = new byte[l];
                    byte[] middle = new byte[l];
                    byte[] end = new byte[l];
                    t.Seek(0, SeekOrigin.Begin);
                    t.Read(begin, 0, begin.Length);

                    t.Seek(l2, SeekOrigin.Begin);
                    t.Read(middle, 0, middle.Length);

                    t.Seek(t.Length - end.Length, SeekOrigin.Begin);
                    t.Read(end, 0, end.Length);

                    string body = UnTo.byteToIntStr(begin) + UnTo.byteToIntStr(middle) + UnTo.byteToIntStr(end);
                    return getMd5Hash(body);
                }
            }
            catch
            {
                return getMd5Hash(filePath);
            }
        }
Exemple #16
0
        /// <summary>
        /// Initializes a new instance of CImageFrame from a valid FileStream.
        /// </summary>
        /// <param name="file">The FileStream as it would be read by DarkEden.</param>
        public CEffectFrame(ref FileStream file)
        {
            byte[] _spriteid = new byte[2];
            byte[] _x = new byte[2];
            byte[] _y = new byte[2];

            file.Read(_spriteid, 0, 2);
            file.Read(_x, 0, 2);
            file.Read(_y, 0, 2);

            this.SpriteID = BitConverter.ToUInt16(_spriteid, 0);
            this.X = BitConverter.ToInt16(_x, 0);
            this.Y = BitConverter.ToInt16(_y, 0);

            this.Light = (byte)file.ReadByte(); // Light and background boolean are stored in same byte. -> BLLLLLLL
            //file.ReadByte();

            if ((this.Light & 0x80) > 0)
            {
                this.isBackground = true;// BitConverter.ToBoolean(new byte[] { (byte)((bgl & 0x01) >> 7) }, 0);
                this.Light &= 0x7F; //(byte)((bgl & 0x7F) << 1);
            }
            else
                this.isBackground = false;
        }
Exemple #17
0
 /// <summary>
 /// 判断两文件是否相同
 /// </summary>
 /// <param name="fileA"></param>
 /// <param name="fileB"></param>
 /// <returns>true表示相同,false表示不相同</returns>
 public static bool FileEquals(string fileA, string fileB)
 {
     if (fileA == fileB) return true;
     using (FileStream fs1 = new FileStream(fileA, FileMode.Open, FileAccess.Read, FileShare.Read))
     using (FileStream fs2 = new FileStream(fileB, FileMode.Open, FileAccess.Read, FileShare.Read))
     {
         if (fs1.Length != fs2.Length)
         {
             return false;
         }
         //每次读4K数据
         const int oneRead = 4 * 1024;
         byte[] bin1 = new byte[oneRead];
         byte[] bin2 = new byte[oneRead];
         int readLen = fs1.Read(bin1, 0, oneRead);
         fs2.Read(bin2, 0, oneRead);
         while (readLen == oneRead)
         {
             if (ByteArrayEquals(bin1, bin2, oneRead))
             {
                 readLen = fs1.Read(bin1, 0, oneRead);
                 fs2.Read(bin2, 0, oneRead);
             }
             else
             {
                 return false;
             }
         }
         return ByteArrayEquals(bin1, bin2, readLen);
     }
 }
    /// <summary>
    /// Detect MimeType from binary file by reading the first 256 bytes.
    /// </summary>
    /// <param name="filename">filename</param>
    /// <returns>mimetype or unknown/unknown</returns>
    public string GetMimeFromFile(string filename)
    {
      if (!File.Exists(filename))
        throw new FileNotFoundException(String.Format("MimeTypeDetector: '{0}' not found!", filename));

      byte[] buffer = new byte[256];
      using (FileStream fs = new FileStream(filename, FileMode.Open))
      {
        if (fs.Length >= 256)
          fs.Read(buffer, 0, 256);
        else
          fs.Read(buffer, 0, (int)fs.Length);
      }
      try
      {
        System.UInt32 mimetype;
        FindMimeFromData(0, null, buffer, 256, null, 0, out mimetype, 0);
        System.IntPtr mimeTypePtr = new IntPtr(mimetype);
        string mime = Marshal.PtrToStringUni(mimeTypePtr);
        Marshal.FreeCoTaskMem(mimeTypePtr);
        return mime;
      }
      catch (Exception e)
      {
        return "unknown/unknown";
      }
    }
Exemple #19
0
        /// <summary>
        /// 分断读取数据
        /// </summary>
        /// <param name="path"></param>
        private void ExportTxtByData(string path)
        {
            Response.Clear();

            Response.ContentType = "application/octet-stream";
            Response.AddHeader("Content-Disposition", "attachment;filename=" + dlfile);
            Response.Flush();

            Stream s = Response.OutputStream;
            using (FileStream fs = new FileStream(path + dlfile, FileMode.Open, FileAccess.Read))
            {
                long fileLength = fs.Length;
                byte[] data = new byte[1024 * 1024];
                int currentPosition = 0;

                while ((fs.Read(data, 0, data.Length) > 0))
                {
                    s.Write(data, 0, data.Length);
                    currentPosition += data.Length;
                    if ((fileLength - currentPosition) > data.Length)
                    {
                        Response.Flush();
                        continue;
                    }
                    else
                    {
                        data = new byte[fileLength - currentPosition];
                        fs.Read(data, 0, data.Length);
                        s.Write(data, 0, data.Length);
                        Response.Flush();
                    }
                }
            }
            s.Close();
        }
        public void Encrypt(string key)
        {
            var stream = new FileStream(Filename, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite);
            // decido quanti byte di inizio file criptare
            // ovviamente devo tener conto della dimensione del file
            int headerSize = 254;
            if (headerSize > stream.Length)
                headerSize = (int)stream.Length;

            var firstBytes = new byte[headerSize];
            stream.Read(firstBytes, 0, firstBytes.Length);

            // crittografa il primo blocco di N bytes
            var crypto = RijndaelService.EncryptBytes(firstBytes, key);

            // leggi tutto il contenuto restante
            byte[] bytes = new byte[stream.Length - firstBytes.Length];
            stream.Read(bytes, 0, bytes.Length);

            stream.Close();
            stream.Dispose();

            // LA situazione ora è definita da
            // crypto: primi N bytes criptati
            // bytes: i restanti bytes del file, normali

            stream = new FileStream(Filename, FileMode.Create);
            // All'inizio del blocco specifica il numero dei byte adibiti all'header section
            stream.Write(BitConverter.GetBytes(crypto.Length), 0, sizeof(int));
            stream.Write(crypto, 0, crypto.Length);
            stream.Write(bytes, 0, bytes.Length);
            stream.Close();
            stream.Dispose();
        }
Exemple #21
0
        public String Upload(UploadTask task)
        {
            FtpWebRequest ftpRequest = null;
            Stream ftpStream = null;
            int bufferSize = 8192;

            ftpRequest = (FtpWebRequest)FtpWebRequest.Create(Host + "/" + task.Remote);
            ftpRequest.Credentials = new NetworkCredential(Login, Password);
            ftpRequest.UseBinary = true;
            ftpRequest.UsePassive = true;
            ftpRequest.KeepAlive = true;
            ftpRequest.Method = WebRequestMethods.Ftp.UploadFile;

            ftpStream = ftpRequest.GetRequestStream();
            var localFileStream = new FileStream(task.Local, FileMode.Open);
            var byteBuffer = new byte[bufferSize];
            int bytesSent = localFileStream.Read(byteBuffer, 0, bufferSize);
            while (bytesSent != 0)
            {
                ftpStream.Write(byteBuffer, 0, bytesSent);
                bytesSent = localFileStream.Read(byteBuffer, 0, bufferSize);
            }
            localFileStream.Close();
            ftpStream.Close();
            ftpRequest = null;

            return String.Format("{0}", task.Name);
        }
        public override void ReadValue(FileStream dataStream)
        {
            // null
            base.ReadValue(dataStream);
            // data buffer
            byte[] buffer = new byte[sizeof(short)];

            // Read our data into the buffer
            dataStream.Read(buffer, 0, sizeof(short));

            // Check Endian
            if (BitConverter.IsLittleEndian)
                Array.Reverse(buffer);

            short first2 = BitConverter.ToInt16(buffer, 0);
            if (first2 < 0)
                throw new Exception("Bad VARCHAR read");

            buffer = new byte[first2];

            dataStream.Read(buffer, 0, first2);

            dataStream.Seek(this.size - first2 - sizeof(short), SeekOrigin.Current);

            Value = System.Text.ASCIIEncoding.ASCII.GetString(buffer);
        }
Exemple #23
0
        public static void UploadFile(string ftpHost, string username, string password, string filepathToUpload, string fileToWrite)
        {
            FtpClient chipbox = new FtpClient();
            chipbox.Host = ftpHost;
            chipbox.Credentials = new NetworkCredential(username, password);

            Stream chipboxDosya = chipbox.OpenWrite(fileToWrite);
            FileStream dosya = new FileStream(filepathToUpload, FileMode.Open);

            try
            {
                int bufferSize = 8192;
                int readCount;
                byte[] buffer = new byte[bufferSize];

                readCount = dosya.Read(buffer, 0, bufferSize);
                while (readCount > 0)
                {
                    chipboxDosya.Write(buffer, 0, readCount);
                    readCount = dosya.Read(buffer, 0, bufferSize);
                }

            }
            finally
            {
                dosya.Close();
                chipboxDosya.Close();
            }
        }
Exemple #24
0
        public static bool DecompressFileLZMA(string inFile, string outFile)
        {
            try
            {
                SevenZip.Sdk.Compression.Lzma.Decoder coder = new SevenZip.Sdk.Compression.Lzma.Decoder();
                FileStream input = new FileStream(inFile, FileMode.Open);
                FileStream output = new FileStream(outFile, FileMode.Create);

                // Read the decoder properties
                byte[] properties = new byte[5];
                input.Read(properties, 0, 5);

                // Read in the decompress file size.
                byte[] fileLengthBytes = new byte[8];
                input.Read(fileLengthBytes, 0, 8);
                long fileLength = BitConverter.ToInt64(fileLengthBytes, 0);

                coder.SetDecoderProperties(properties);
                coder.Code(input, output, input.Length, fileLength, null);
                output.Flush();
                output.Close();
            }
            catch (Exception)
            {
                return false;
            }
            return true;
        }
Exemple #25
0
        public static CompressedImage Load(string path, int DCTSize)
        {
            var result = new CompressedImage();
            using (var sr = new FileStream(path, FileMode.Open))
            {
                byte[] buffer = new byte[4];

                sr.Read(buffer, 0, 4);
                result.Height = BitConverter.ToInt32(buffer, 0);

                sr.Read(buffer, 0, 4);
                result.Width = BitConverter.ToInt32(buffer, 0);

                sr.Read(buffer, 0, 4);
                result.CompressionLevel = BitConverter.ToInt32(buffer, 0);

                sr.Read(buffer, 0, 4);
                var blockSize = result.FrequencesPerBlock = BitConverter.ToInt32(buffer, 0);

                var blocksCount = result.Height * result.Width / (DCTSize * DCTSize);
                result.Frequences = new List<double>(blocksCount * result.FrequencesPerBlock);

                for (int blockNum = 0; blockNum < blocksCount; blockNum++)
                {
                    for (int freqNum = 0; freqNum < blockSize; freqNum++)
                    {
                        sr.Read(buffer, 0, 2);
                        result.Frequences.Add(BitConverter.ToInt16(buffer, 0));
                    }
                }
            }
            return result;
        }
        public Matrix FileInitialization(string filename)
        {
            using (var fs = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.Read))
            {
                var buff = new byte[255];

                fs.Read(buff, 0, sizeof(int));

                int n = BitConverter.ToInt32(buff, 0);

                fs.Read(buff, 0, sizeof(int));

                int m = BitConverter.ToInt32(buff, 0);

                var matrix = new Matrix(n, m);

                for (var i = 0; i < n; i++)
                {
                    for (var j = 0; j < m; j++)
                    {
                        fs.Read(buff, 0, sizeof (double));
                        matrix.Data[i][j] = BitConverter.ToDouble(buff, 0);
                    }
                }

                return matrix;
            }
        }
Exemple #27
0
		public static void UploadToFTP(string filePath, string remotePath, string logOn, string password)
		{
			using (FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.Read))
			{
				string url = Path.Combine(remotePath, Path.GetFileName(filePath));

				Uri uri = new Uri(url);
				FtpWebRequest ftp = (FtpWebRequest)FtpWebRequest.Create(uri);

				ftp.Credentials = new NetworkCredential(logOn, password);
				ftp.KeepAlive = false;
				ftp.Method = WebRequestMethods.Ftp.UploadFile;
				ftp.UseBinary = true;
				ftp.ContentLength = fs.Length;
				ftp.Proxy = null;
				fs.Position = 0;

				int contentLen;
				int buffLength = 2048;
				byte[] buff = new byte[buffLength];

				using (Stream strm = ftp.GetRequestStream())
				{
					contentLen = fs.Read(buff, 0, buffLength);

					while (contentLen != 0)
					{
						strm.Write(buff, 0, contentLen);
						contentLen = fs.Read(buff, 0, buffLength);
					}
				}
			}
		}
Exemple #28
0
		public static DateTime GetAssemblyBuildTime(System.Reflection.Assembly assembly)
		{
			if (System.IO.File.Exists(assembly.Location))
			{
				var buffer = new byte[Math.Max(Marshal.SizeOf(typeof(_IMAGE_FILE_HEADER)), 4)];
				using (var fileStream = new FileStream(assembly.Location, FileMode.Open, FileAccess.Read))
				{
					fileStream.Position = 0x3C;
					fileStream.Read(buffer, 0, 4);
					fileStream.Position = BitConverter.ToUInt32(buffer, 0);
					fileStream.Read(buffer, 0, 4);
					fileStream.Read(buffer, 0, buffer.Length);
				}
				var pinnedBuffer = GCHandle.Alloc(buffer, GCHandleType.Pinned);
				try
				{
					var coffHeader = (_IMAGE_FILE_HEADER)Marshal.PtrToStructure(pinnedBuffer.AddrOfPinnedObject(), typeof(_IMAGE_FILE_HEADER));

					return TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1) + new TimeSpan(coffHeader.TimeDateStamp * TimeSpan.TicksPerSecond));
				}
				finally
				{
					pinnedBuffer.Free();
				}
			}
			else
				throw new Exception("Unable to read assembly");
		}
Exemple #29
0
		public bool readArchiveFileHeader(FileStream fileHandle, ByteBuffer pMByteBuffer)
		{
			pMByteBuffer.clear ();
			fileHandle.Read(pMByteBuffer.dynBuff.buff, 0, 4);
			pMByteBuffer.length = 4;
            string magic = "";
			pMByteBuffer.readMultiByte(ref magic, 4, Encoding.UTF8);
			if (magic != "asdf")		// 检查 magic
			{
				return false;
			}

			pMByteBuffer.clear ();
			fileHandle.Read(pMByteBuffer.dynBuff.buff, 0, (int)calcArchiveHeaderSizeNoFileHeader() - 4);
			pMByteBuffer.length = calcArchiveHeaderSizeNoFileHeader() - 4;
			// 读取 endian 
            pMByteBuffer.readUnsignedInt8(ref m_endian);
			pMByteBuffer.setEndian((Endian)m_endian);

			// 读取头部大小
            pMByteBuffer.readUnsignedInt32(ref m_headerSize);

			// 读取版本
            pMByteBuffer.readUnsignedInt32(ref m_version);
			// 读取文件数量
            pMByteBuffer.readUnsignedInt32(ref m_fileCount);

			// 读取整个头
			pMByteBuffer.clear ();
			fileHandle.Read(pMByteBuffer.dynBuff.buff, 0, (int)(m_headerSize - calcArchiveHeaderSizeNoFileHeader()));
			pMByteBuffer.length = m_headerSize - calcArchiveHeaderSizeNoFileHeader ();

			return true;
		}
        /// <summary>
        /// Computes the CRC32 checksum of a file using the file path. 
        /// The actual CRC32 algorithm is described in RFC 1952
        /// (GZIP file format specification version 4.3), this is also
        /// the specification for the algorithm used in java.util.zip.
        /// </summary>
        /// <param name="filePath">the physical path of the file on the ESS</param>
        /// <returns>the string form of the calculated CRC32 checksum</returns>
        public static string ComputeCRC32(string filePath)
        {
            CRC_1952 crc = new CRC_1952();

            FileStream fs = null;
            ulong csum = 0L;
            try
            {
            fs = new FileStream(filePath, FileMode.Open, FileAccess.Read);
            byte[] buf = new byte[512];
            int byteCount = fs.Read(buf, 0, 512);
            while (byteCount > 0)
            {
               csum =  crc.updateCRC(csum, buf, byteCount);
                byteCount = fs.Read(buf, 0, 512);
            }

            fs.Close();
            return csum.ToString("X");
            }
            catch (IOException ex)
            {
            throw new IOException("Exception thrown computing CRC32 checksum using the file path", ex);
            }
        }
Exemple #31
0
        public byte[] CutToEnd(int position)
        {
            var size = Convert.ToInt32(_stream.Length - position);

            if (size == 0)
            {
                return(null);
            }
            var bytes = new byte[size];

            SetPosition(position);
            _stream?.Read(bytes, 0, size);
            //_stream?.SetLength(position);
            return(bytes);
        }
Exemple #32
0
    protected void Page_Load(object sender, EventArgs e)
    {
        int    fileID   = Convert.ToInt32(Request.QueryString["ID"]);
        string type     = Request.QueryString["type"];
        string fileName = string.Empty;

        byte[] imageBytes = null;

        if (type == "training")
        {
            try
            {
                Training         trainingHandler = new Training();
                TrainingFormInfo formInfo        = trainingHandler.getTrainingFormInfo(fileID);

                System.IO.FileStream file     = new System.IO.FileStream(formInfo.FormPath, System.IO.FileMode.Open);
                System.IO.FileInfo   fileInfo = new System.IO.FileInfo(formInfo.FormPath);

                fileName = formInfo.Description + fileInfo.Extension;
                int length = Convert.ToInt32(file.Length);
                imageBytes = new byte[length];
                file.Read(imageBytes, 0, length);
                file.Close();
            }
            catch (Exception ex)
            {
                Log.log(ex.Message + "\r\n" + ex.StackTrace, Log.Type.Exception);
                Response.ClearContent();
                Response.Clear();
                Response.Redirect("~/FileNotFound.html");
            }
        }
        else
        {
            File     file     = new File();
            FileInfo fileInfo = file.GetFileInfo(fileID);
            fileName   = fileInfo.FileNameForDownload;
            imageBytes = file.GetFileByID(fileID);
        }

        Response.ClearContent();
        Response.Clear();
        Response.ContentType = "text/plain";
        Response.AddHeader("Content-Disposition", "attachment; filename=" + fileName + ";");

        Response.BinaryWrite(imageBytes);
        Response.Flush();
        Response.End();
    }
Exemple #33
0
    public static BlockExtension Load(System.IO.FileStream fs, Block b)
    {
        var data = new byte[14];

        fs.Read(data, 0, data.Length);
        int  materialID = System.BitConverter.ToInt32(data, 0);
        bool isNatural  = data[4] == 1;
        var  be         = new BlockExtension(b, materialID, isNatural);

        be.existingPlanesMask = data[5];
        be.fossilsVolume      = System.BitConverter.ToSingle(data, 6);
        be.volume             = System.BitConverter.ToSingle(data, 10);
        be.LoadPlanesData(fs);
        return(be);
    }
    override public void Load(System.IO.FileStream fs, Plane sblock)
    {
        var data = new byte[STRUCTURE_SERIALIZER_LENGTH + 5];

        fs.Read(data, 0, data.Length);
        Prepare();
        modelRotation  = data[2];
        indestructible = (data[3] == 1);
        skinIndex      = System.BitConverter.ToUInt32(data, 4);
        //
        mainResource  = ResourceType.GetResourceTypeById(System.BitConverter.ToInt32(data, STRUCTURE_SERIALIZER_LENGTH));
        resourceCount = data[STRUCTURE_SERIALIZER_LENGTH + 4];
        //
        SetBasement(sblock, new PixelPosByte(data[0], data[1]));
        hp    = System.BitConverter.ToSingle(data, 8);
        maxHp = System.BitConverter.ToSingle(data, 12);
    }
        /// <summary>
        /// Encrypts a package (zip) file using a supplied password and returns
        /// an array to create an encryption information stream and a byte array
        /// of the encrypted package.
        /// </summary>
        /// <param name="filename">The package (zip) file to be encrypted</param>
        /// <param name="password">The password to decrypt the package</param>
        /// <param name="encryptionInfo">An array of bytes containing the encrption info</param>
        /// <param name="encryptedPackage">The encrpyted package</param>
        /// <returns></returns>
        public void EncryptPackage(string filename, string password, out byte[] encryptionInfo, out byte[] encryptedPackage)
        {
            if (!File.Exists(filename))
            {
                throw new ArgumentException("Package file does not exist");
            }

            // Grab the package contents and encrypt
            byte[] packageContents = null;
            using (System.IO.FileStream fs = new System.IO.FileStream(filename, System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.ReadWrite))
            {
                packageContents = new byte[fs.Length];
                fs.Read(packageContents, 0, packageContents.Length);
            }

            EncryptPackage(packageContents, password, out encryptionInfo, out encryptedPackage);
        }
 byte [] GetBuffer( long bufferNum )
 {
   byte [] result;
   if ( Buffers.TryGetValue( bufferNum, out result ) ) return result;
   result = new byte[ BufferSize ];
   Buffers[ bufferNum ] = result;
   long pos = bufferNum << BufferShift;
   if ( BaseStream.Position != pos ) BaseStream.Position = pos;
   int i = 0;
   while ( i < BufferSize )
   {
     int got = BaseStream.Read( result, i, BufferSize - i );
     if ( got == 0 ) break;
     i += got;
   }
   return result;
 }
    override public void Load(System.IO.FileStream fs, Plane sblock)
    {
        var data = new byte[STRUCTURE_SERIALIZER_LENGTH + 2];

        fs.Read(data, 0, data.Length);
        Prepare();
        modelRotation  = data[2];
        indestructible = (data[3] == 1);
        skinIndex      = System.BitConverter.ToUInt32(data, 4);
        var ppos = new PixelPosByte(data[0], data[1]);

        hp    = System.BitConverter.ToSingle(data, 8);
        maxHp = System.BitConverter.ToSingle(data, 12);

        SetData((Settlement.SettlementStructureType)data[STRUCTURE_SERIALIZER_LENGTH + 1], data[STRUCTURE_SERIALIZER_LENGTH], null);
        SetBasement(sblock, ppos);
    }
Exemple #38
0
        private void ProcessRequest(object o)
        {
            HttpListenerContext context = (HttpListenerContext)o;

            var    request  = context.Request;
            var    response = context.Response;
            string url      = context.Request.Url.AbsolutePath;

            RouteAction ra = routeManager.GetRoute(url);

            if (ra != null)
            {
                response.StatusCode = 200;
                object obj = Activator.CreateInstance(ra.Type);
                ra.Method.Invoke(obj, new object[] { context });
            }
            else
            {
                // 静态资源
                string filePath = Environment.CurrentDirectory + url;
                if (File.Exists(filePath))
                {
                    response.StatusCode = 200;
                    string exeName = Path.GetExtension(filePath);
                    response.ContentType = GetContentType(exeName);
                    FileStream fileStream = new System.IO.FileStream(filePath, System.IO.FileMode.Open, System.IO.FileAccess.Read, FileShare.ReadWrite);
                    int        byteLength = (int)fileStream.Length;
                    byte[]     fileBytes  = new byte[byteLength];
                    fileStream.Read(fileBytes, 0, byteLength);
                    fileStream.Close();
                    fileStream.Dispose();
                    response.ContentLength64 = byteLength;
                    response.OutputStream.Write(fileBytes, 0, byteLength);
                    response.OutputStream.Close();
                }
                else
                {
                    response.StatusCode      = 404;
                    response.ContentLength64 = 0;
                }
            }

            Logger.Info(string.Format("{0} {1} status:{2}", context.Request.HttpMethod, url, context.Response.StatusCode));

            context.Response.Close();
        }
Exemple #39
0
        private void InsertImageToDB() //вызывается только один раз при добалении картинок
        {
            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                connection.Open();
                SqlCommand command = new SqlCommand();
                command.Connection  = connection;
                command.CommandText = @"INSERT INTO Images1 VALUES (@FileName, @ImageData)";
                command.Parameters.Add("@FileName", SqlDbType.NVarChar, 50);
                command.Parameters.Add("@ImageData", SqlDbType.Image, 1000000);

                string[] filenames      = new string[55];
                string[] shortFileNames = new string[55];
                for (int i = 0; i < 25; i++)
                {
                    filenames[i]      = $@"D:\images\{i + 1}.jpg";
                    shortFileNames[i] = $"{i + 1}.jpg";
                }
                int j = 1;
                for (int i = 25; i < 48; i++, j++)
                {
                    filenames[i]      = $@"D:\images\wallpapers-nature-{j}.jpg";
                    shortFileNames[i] = $"wallpapers-nature-{j}.jpg";
                }

                byte[] imageData;
                int    k = 0;
                foreach (string filename in filenames)
                {
                    if (k != 55)
                    {
                        using (System.IO.FileStream fs = new System.IO.FileStream(filename, FileMode.Open))
                        {
                            imageData = new byte[fs.Length];
                            fs.Read(imageData, 0, imageData.Length);

                            command.Parameters["@FileName"].Value  = filename;
                            command.Parameters["@ImageData"].Value = imageData;

                            command.ExecuteNonQuery();
                        }
                        k++;
                    }
                }
            }
        }
Exemple #40
0
    override public void Load(System.IO.FileStream fs, Plane sblock)
    {
        base.Load(fs, sblock);
        artifacts = new Artifact[MAX_ARTIFACTS_COUNT];
        var data = new byte[16];

        fs.Read(data, 0, 16);
        int x = System.BitConverter.ToInt32(data, 0);

        if (x != -1)
        {
            artifacts[0] = Artifact.GetArtifactByID(x);
        }
        else
        {
            artifacts[0] = null;
        }
        x = System.BitConverter.ToInt32(data, 4);
        if (x != -1)
        {
            artifacts[1] = Artifact.GetArtifactByID(x);
        }
        else
        {
            artifacts[1] = null;
        }
        x = System.BitConverter.ToInt32(data, 8);
        if (x != -1)
        {
            artifacts[2] = Artifact.GetArtifactByID(x);
        }
        else
        {
            artifacts[2] = null;
        }
        x = System.BitConverter.ToInt32(data, 12);
        if (x != -1)
        {
            artifacts[3] = Artifact.GetArtifactByID(x);
        }
        else
        {
            artifacts[3] = null;
        }
        RecalculateAffection();
    }
        // 发送文件的线程函数
        private void SendFileLoop()
        {
            while (SIGN_STREAMSETUP)
            {
                if (!SUSPEND_OF_SENDFILETHREAD)
                {
                    sendfilestream = new FileStream(SENDFILEADDRESS, FileMode.Open, FileAccess.Read, FileShare.None);
                    byte[] buffer = new byte[sendfilestream.Length];

                    string metaOfFile = "picture" + "//" + SENDFILENAME + "//" +
                                        sendfilestream.Length.ToString();
                    byte[] byte_metaOfFile = System.Text.Encoding.ASCII.GetBytes(metaOfFile);
                    stream.Write(byte_metaOfFile, 0, byte_metaOfFile.Length);

                    while (true)
                    {
                        if (!SUSPEND_OF_SENDFILETHREAD)
                        {
                            try
                            {
                                int length = sendfilestream.Read(buffer, 0, buffer.Length);
                                if (length == 0)
                                {
                                    sendfilestream.Close();
                                    sendfilestream.Dispose();

                                    // 发送文件完毕,进程挂起。
                                    closeSendFile();
                                    break;
                                }
                                stream.Write(buffer, 0, length);
                            }
                            catch (IOException ex)
                            {
                                MessageBox.Show(ex.ToString());
                                break;
                            }
                        }
                    }
                }
                else
                {
                    System.Threading.Thread.Sleep(200);
                }
            }
        }
Exemple #42
0
 public static Drawing.Image OpenImage(string fileName)
 {
     try
     {
         System.IO.FileStream fs = new System.IO.FileStream(fileName, FileMode.Open, FileAccess.Read);
         int    byteLength       = (int)fs.Length;
         byte[] fileBytes        = new byte[byteLength];
         fs.Read(fileBytes, 0, byteLength);
         fs.Close();
         Drawing.Image image = Drawing.Image.FromStream(new MemoryStream(fileBytes));
         return(image);
     }
     catch
     {
         return(null);
     }
 }
Exemple #43
0
    public void Load(System.IO.FileStream fs)
    {
        int LENGTH = 18;
        var data   = new byte[LENGTH];

        fs.Read(data, 0, LENGTH);
        richness     = System.BitConverter.ToSingle(data, 0);
        danger       = System.BitConverter.ToSingle(data, 4);
        mysteria     = System.BitConverter.ToSingle(data, 8);
        friendliness = System.BitConverter.ToSingle(data, 12);
        path         = (Path)data[16];
        if (data[17] == 1)
        {
            int size = fs.ReadByte();
            challengeArray = ChallengeField.Load(fs, size);
        }
    }
Exemple #44
0
        /// <summary>
        /// 返回Excel表中的首页名称(传入路径)
        /// </summary>
        /// <param name="filePath"></param>
        /// <returns></returns>
        public static string GetSheetName(string filePath)
        {
            string sheetName = "";

            System.IO.FileStream tmpStream = File.OpenRead(filePath);
            byte[] fileByte = new byte[tmpStream.Length];
            tmpStream.Read(fileByte, 0, fileByte.Length);
            tmpStream.Close();

            byte[] tmpByte = new byte[] { Convert.ToByte(11), Convert.ToByte(0), Convert.ToByte(0), Convert.ToByte(0), Convert.ToByte(0), Convert.ToByte(0), Convert.ToByte(0), Convert.ToByte(0),
                                          Convert.ToByte(11), Convert.ToByte(0), Convert.ToByte(0), Convert.ToByte(0), Convert.ToByte(0), Convert.ToByte(0), Convert.ToByte(0), Convert.ToByte(0),
                                          Convert.ToByte(30), Convert.ToByte(16), Convert.ToByte(0), Convert.ToByte(0) };

            int index = GetSheetIndex(fileByte, tmpByte);

            if (index > -1)
            {
                index += 16 + 12;
                System.Collections.ArrayList sheetNameList = new System.Collections.ArrayList();

                for (int i = index; i < fileByte.Length - 1; i++)
                {
                    byte temp = fileByte[i];
                    if (temp != Convert.ToByte(0))
                    {
                        sheetNameList.Add(temp);
                    }
                    else
                    {
                        break;
                    }
                }
                byte[] sheetNameByte = new byte[sheetNameList.Count];
                for (int i = 0; i < sheetNameList.Count; i++)
                {
                    sheetNameByte[i] = Convert.ToByte(sheetNameList[i]);
                }

                sheetName = System.Text.Encoding.Default.GetString(sheetNameByte);
            }
            if (sheetName == "")
            {
                sheetName = "Sheet1";
            }
            return(sheetName);
        }
Exemple #45
0
        public ActionResult PostOpenAtChrome()
        {
            //string Filepath = @"C:\Users\WAN\source\repos\Wanlib\WanWebLib\SampleFile\測試下載用檔案.docx";
            string Filepath = Server.MapPath("~/SampleFile/測試下載用檔案.docx");
            string Folder   = Server.UrlDecode("~/SampleFile");
            string FileName = "測試下載用檔案.docx";

            System.IO.FileStream fs = System.IO.File.OpenRead(Filepath);
            byte[] data             = new byte[fs.Length];

            int br = fs.Read(data, 0, data.Length);


            //return Redirect(Folder + "//" + FileName);

            return(File(data, "application/vnd.openxmlformats-officedocument.wordprocessingml.document", "阿捏.docx"));
        }
Exemple #46
0
    private static void LoadMd5FindFile()
    {
        if (m_LoadMd5FindFile)
        {
            return;
        }
        m_LoadMd5FindFile = true;
        string fileName = "Assets/md5Find.txt";

        if (System.IO.File.Exists(fileName))
        {
            System.IO.FileStream stream = new System.IO.FileStream(fileName, System.IO.FileMode.Open, System.IO.FileAccess.Read);
            if (stream.Length > 0)
            {
                byte[] buf = new byte[stream.Length];
                stream.Read(buf, 0, buf.Length);
                string        s     = System.Text.Encoding.ASCII.GetString(buf);
                List <string> lines = new List <string>(s.Split('\r'));
                for (int i = 0; i < lines.Count; ++i)
                {
                    string line = lines[i].Trim();
                    if (string.IsNullOrEmpty(line))
                    {
                        continue;
                    }
                    int idx = line.IndexOf('=');
                    if (idx > 0)
                    {
                        string left = line.Substring(0, idx).Trim();
                        if (string.IsNullOrEmpty(left))
                        {
                            continue;
                        }
                        string right = line.Substring(idx + 1).Trim();
                        if (string.IsNullOrEmpty(right))
                        {
                            continue;
                        }
                        m_Md5FindMap.Add(left, right);
                    }
                }
            }
            stream.Dispose();
            stream.Close();
        }
    }
Exemple #47
0
        public static void Run()
        {
            // ExStart:1
            // The path to the documents directory.
            string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);

            // Creating a Workbook object
            Workbook workbook = new Workbook();

            // Creating a string variable to store the url of the logo/picture
            string logo_url = dataDir + "aspose-logo.jpg";

            // Declaring a FileStream object
            FileStream inFile;

            // Declaring a byte array
            byte[] binaryData;

            // Creating the instance of the FileStream object to open the logo/picture in the stream
            inFile = new System.IO.FileStream(logo_url, System.IO.FileMode.Open, System.IO.FileAccess.Read);

            // Instantiating the byte array of FileStream object's size
            binaryData = new Byte[inFile.Length];

            // Reads a block of bytes from the stream and writes data in a given buffer of byte array.
            long bytesRead = inFile.Read(binaryData, 0, (int)inFile.Length);

            // Creating a PageSetup object to get the page settings of the first worksheet of the workbook
            PageSetup pageSetup = workbook.Worksheets[0].PageSetup;

            // Setting the logo/picture in the central section of the page header
            pageSetup.SetHeaderPicture(1, binaryData);

            // Setting the script for the logo/picture
            pageSetup.SetHeader(1, "&G");

            // Setting the Sheet's name in the right section of the page header with the script
            pageSetup.SetHeader(2, "&A");

            // Saving the workbook
            workbook.Save(dataDir + "InsertImageInHeaderFooter_out.xls");

            //Closing the FileStream object
            inFile.Close();
            // ExEnd:1
        }
Exemple #48
0
        /*private  Complex[] prepare(String wavePath)
         * {
         *  Complex[] data;
         *  byte[] wave;
         *  System.IO.FileStream WaveFile = System.IO.File.OpenRead(wavePath);
         *  wave = new byte[WaveFile.Length];
         *  int defleng = (wave.Length - 44) / 4;
         *  int leng = calcLenth(defleng);
         *  N = leng;
         *  data = new Complex[leng];//shifting the headers out of the PCM data;
         *  WaveFile.Read(wave, 0, Convert.ToInt32(WaveFile.Length));//read the wave file into the wave variable
         *  for (int i = 0; i < defleng; i++)
         *  {
         *      data[i] = (BitConverter.ToInt32(wave, 44 + i * 4)) / 4294967296.0;
         *  }
         *
         *  return data;
         * } */

        private Complex[] fstprepare(String wavePath)
        {
            Complex[]            data;
            byte[]               wave;
            System.IO.FileStream WaveFile = System.IO.File.OpenRead(wavePath);
            wave = new byte[WaveFile.Length];
            N    = (wave.Length - 44) / 4;
            data = new Complex[N];                                    //shifting the headers out of the PCM data;
            WaveFile.Read(wave, 0, Convert.ToInt32(WaveFile.Length)); //read the wave file into the wave variable
                                                                      /***********Converting and PCM accounting***************/
            for (int i = 0; i < N; i++)
            {
                data[i] = (Complex)(BitConverter.ToInt32(wave, 44 + i * 4)) / 4294967296.0;
            }

            return(data);
        }
Exemple #49
0
        /// <summary>
        /// Envia um arquivo no stream de rede
        /// </summary>
        /// <param name="pathSource">Caminho do arquivo a ser enviado</param>
        /// <param name="fileSize">Tamanho do arquivo</param>
        public void SendFile(string pathSource, long fileSize)
        {
#if DEBUG
            Log.Framework.DebugFormat("Stream {0} irá enviar arquivo {1} de {2} bytes", this.GetHashCode(), pathSource, fileSize);
#endif

            using (var reader = new System.IO.FileStream(pathSource, FileMode.Open))
            {
                var totalSendedBytes = 0;

                try
                {
                    while (fileSize > totalSendedBytes)
                    {
                        var bufferSize = this.GetBufferSize(fileSize, totalSendedBytes);
                        var fileBuffer = new byte[bufferSize];

                        var sendedBytes = reader.Read(fileBuffer, 0, fileBuffer.Length);

                        this.stream.Write(fileBuffer, 0, fileBuffer.Length);
                        totalSendedBytes += sendedBytes;

#if DEBUG
                        Log.Framework.DebugFormat("Stream {0} enviou {1} de {2} bytes. Restam {3} bytes", this.GetHashCode(), sendedBytes, fileSize, fileSize - totalSendedBytes);
#endif
                    }
                }
#if DEBUG
                catch (Exception exception)
                {
                    Log.Application.Error(string.Format("Stream {0} não conseguiu enviar arquivo", this.GetHashCode()), exception);
                }
#else
                catch
                {
                }
#endif

                reader.Close();
            }

#if DEBUG
            Log.Application.DebugFormat("Stream {0} enviu o arquivo {1}", this.GetHashCode(), pathSource);
#endif
        }
    protected void btnContinue_Click(object sender, EventArgs e)
    {
        this.PhotoName = this.PhotoSaveNameCropped + LIB.Util.GetExtension(this.PhotoName);
        string PhotoFullPath = this._PhotoPath + this.PhotoName;

        wci1.Crop(PhotoFullPath);

        System.IO.FileStream fs = new System.IO.FileStream(Request.MapPath(Request.ApplicationPath + "/" + PhotoFullPath), FileMode.Open, FileAccess.ReadWrite);
        byte[] imgData          = new byte[fs.Length];

        fs.Read(imgData, 0, int.Parse(fs.Length.ToString()));
        fs.Close();

        System.Drawing.Image img = System.Drawing.Image.FromStream(new MemoryStream(imgData));

        int OrgW = img.Width;
        int OrgH = img.Height;

        int newW = 0;
        int newH = 0;

        if (OrgW > this._SizeW)
        {
            newW = this._SizeW;
            newH = (int)(OrgH / ((double)OrgW / this._SizeW));

            Bitmap   b = new Bitmap(newW, newH);
            Graphics g = Graphics.FromImage((System.Drawing.Image)b);
            g.InterpolationMode = InterpolationMode.HighQualityBicubic;
            g.DrawImage(img, 0, 0, newW, newH);
            g.Dispose();

            img = (System.Drawing.Image)b;
            img.Save(Request.MapPath(PhotoFullPath), System.Drawing.Imaging.ImageFormat.Jpeg);
        }

        ImageHelper ImgHelper = new ImageHelper();

        string SavePath = this.PhotoSaveNameThumb + LIB.Util.GetExtension(this.PhotoName);

        SavePath = Request.MapPath(this._PhotoPath + SavePath);
        ImgHelper.Crop(Request.MapPath(PhotoFullPath), SavePath, 0, 0, _SizeW, (int)COM.Enum.PhotoSizeH.SizeActivityPhotoSmallH);

        this.IsSaved = true;
    }
        public void InitEveryThing()
        {
            this.BoneModel = this.BoneBLL.GetData(this.Model.IDCardNo, HealthHouseFactory.ID);
            if (this.BoneModel == null)
            {
                this.BoneModel          = new HHBoneModel();
                this.BoneModel.IDCardNo = this.Model.IDCardNo;
            }
            CSingleItem item = new CSingleItem
            {
                Name    = "骨密度",
                Usual   = this.rdBone,
                Unusual = this.rdBoneEx,
                Info    = this.txtResultEx
            };

            this.Bone = item;
            this.Bone.TransInfo(this.BoneModel.Result, this.BoneModel.ResultEx);
            if (!string.IsNullOrEmpty(this.BoneModel.ImgPath) && File.Exists(this.BoneModel.ImgPath))
            {
                //读取文件流
                System.IO.FileStream fs = new System.IO.FileStream(this.BoneModel.ImgPath, FileMode.Open, FileAccess.Read);

                int    byteLength = (int)fs.Length;
                byte[] fileBytes  = new byte[byteLength];
                fs.Read(fileBytes, 0, byteLength);

                //文件流关閉,文件解除锁定
                fs.Close();
                Image image = Image.FromStream(new MemoryStream(fileBytes));

                pboxBShow.Image = image;

                //Image img = System.Drawing.Image.FromFile(this.BoneModel.ImgPath);
                //Image bmp = new System.Drawing.Bitmap(img);
                //img.Dispose();

                //pboxBShow.Image = bmp;
            }
            else
            {
                btnPrint.Visible = false;
            }
            this.EveryThingIsOk = true;
        }
    public void OnClickLoadAndSetTextureButton()
    {
        string filePathAndName = Application.persistentDataPath + "/" + SaveFileName;

        // https://qiita.com/r-ngtm/items/6cff25643a1a6ba82a6c
        // ここ参考にした
        //ファイルを開く
        System.IO.FileStream fs = new System.IO.FileStream(
            filePathAndName,
            System.IO.FileMode.Open,
            System.IO.FileAccess.Read
            );

        //ファイルを読み込むバイト型配列を作成する
        byte[] bs = new byte[fs.Length];

        //ファイルの内容をすべて読み込む
        fs.Read(bs, 0, bs.Length);

        //閉じる
        fs.Close();

        int pos   = 16;       // 16バイトから開始
        int width = 0;

        for (int i = 0; i < 4; i++)
        {
            width = width * 256 + bs[pos++];
        }

        int height = 0;

        for (int i = 0; i < 4; i++)
        {
            height = height * 256 + bs[pos++];
        }

        TakeTexture = new Texture2D(width, height);
        TakeTexture.LoadImage(bs);


        Sprite sprite = Sprite.Create(TakeTexture, new Rect(0, 0, width, height), Vector2.zero);

        TestImage.sprite = sprite;
    }
Exemple #53
0
        /// <summary>
        /// 把一个文件存入数据库
        /// </summary>
        public int WriteFile(string FilePath, string SqlString, string ParamName, bool Add)
        {
            if (!System.IO.File.Exists(FilePath))
            {
                return(0);
            }

            //存储和读取Access数据库的OLE对象一般是转换成byte数组进行处理
            System.IO.FileStream stream = new System.IO.FileStream(FilePath, System.IO.FileMode.Open, System.IO.FileAccess.Read);
            byte[] bData;
            int    offset = 0;

            if (Add)
            {
                offset   = 10;
                bData    = new byte[stream.Length + 10];
                bData[0] = bData[1] = bData[2] = (byte)3;
                bData[3] = bData[4] = bData[5] = (byte)6;
                bData[6] = bData[7] = bData[8] = (byte)9;
                bData[9] = (byte)0;
            }
            else
            {
                bData = new byte[stream.Length];
            }
            stream.Read(bData, offset, (int)stream.Length);

            OleDbCommand cmd = new OleDbCommand(SqlString, this.cn);

            cmd.Parameters.Add(new OleDbParameter(ParamName, bData));

            if (cn.State != ConnectionState.Open)
            {
                cn.Open();
            }

            cmd.CommandTimeout = 500;
            int a = cmd.ExecuteNonQuery();

            cmd.Dispose();

            stream.Dispose();

            return(a);
        }
        /// <summary>
        /// 压缩文件
        /// </summary>
        /// <param name="FileToZip">待压缩的文件</param>
        /// <param name="ZipedFile">压缩后的文件</param>
        /// <param name="password">压缩密码</param>
        private static void ZipFile(string FileToZip, string ZipedFile, string password)        //如果文件没有找到,则报错
        {
            if (!System.IO.File.Exists(FileToZip))
            {
                throw new System.IO.FileNotFoundException("文件 " + FileToZip + "不存在!");
            }
            //取得待压缩文件流
            System.IO.FileStream StreamToZip = new System.IO.FileStream(FileToZip, System.IO.FileMode.Open, System.IO.FileAccess.Read);
            //创建压缩后的文件
            System.IO.FileStream ZipFile = System.IO.File.Create(ZipedFile);
            //创建新的ZIP输出流
            ZipOutputStream ZipStream = new ZipOutputStream(ZipFile);
            // 每一个被压缩的文件都用ZipEntry表示,需要为每一个压缩后的文件设置名称
            ZipEntry ZipEntry = new ZipEntry("ZippedFile");

            //设置每一个ZipEntry对象
            ZipStream.PutNextEntry(ZipEntry);
            // 为后续的 DEFLATED 条目设置压缩级别。 0 -9
            ZipStream.SetLevel(6);
            //设置解压密码
            ZipStream.Password = password;
            //每次写入1024个字节
            byte[] buffer = new byte[1024];
            int    size   = 0; //已写入压缩流的字节数

            try {
                //如果没有写入完成
                while (size < StreamToZip.Length)
                {
                    //将文件内容写入buffer
                    int sizeRead = StreamToZip.Read(buffer, 0, buffer.Length);
                    //将字节写入压缩流
                    ZipStream.Write(buffer, 0, sizeRead);
                    size += sizeRead;
                }
            } catch (System.Exception ex) {
                throw ex;
            }
            //完成写入 ZIP 输出流的内容,无需关闭底层流。
            ZipStream.Finish();
            //关闭 ZIP 输出流和正在过滤的流。
            ZipStream.Close();
            //关闭文件流
            StreamToZip.Close();
        }
 public byte[] getSouceFileContent(string strSource)
 {
     byte[] binaryData;
     try
     {
         System.IO.FileStream inFile = new System.IO.FileStream(strSource,
                                                                System.IO.FileMode.Open,
                                                                System.IO.FileAccess.Read);
         binaryData = new Byte[inFile.Length];
         long bytesRead = inFile.Read(binaryData, 0, (int)inFile.Length);
         inFile.Close();
     }
     catch (System.Exception exp)
     {
         throw new System.Exception(exp.Message, exp);
     }
     return(binaryData);
 }
Exemple #56
0
 /// <summary>
 /// 读取指定文件
 /// </summary>
 /// <param name="fileName"></param>
 /// <returns></returns>
 public static string ReadFile(string fileName)
 {
     System.IO.FileStream fs = new System.IO.FileStream(fileName, System.IO.FileMode.OpenOrCreate);
     byte[] buff             = new byte[fs.Length];
     fs.Read(buff, 0, buff.Length);
     fs.Flush();
     fs.Close();
     fs.Dispose();
     fs = null;
     if (buff != null && buff.Length > 3 &&
         buff[0] == 0xEF &&
         buff[1] == 0xBB &&
         buff[2] == 0xBF)
     {
         return(new UTF8Encoding(false).GetString(buff, 3, buff.Length - 3));
     }
     return(Encoding.UTF8.GetString(buff));
 }
Exemple #57
0
        public static string ReadTextFile(FileInfo file, Encoding encoding)
        {
            // Validate parameter(s).
            ThrowHelper.ArgumentNull((file == null), nameof(file));
            ThrowHelper.ArgumentNull((encoding == null), nameof(encoding));

            System.IO.FileStream stream = file.Open(FileMode.Open, FileAccess.Read);
            int length = Convert.ToInt32(file.Length);

            byte[] buffer = new byte[length];
            stream.Read(buffer, 0, length);
            stream.Close();

            // Convert to text
            string text = encoding.GetString(buffer);

            return(text);
        }
Exemple #58
0
        public static string ImageToBase64String(string ImagePath)//需要public stitic方便外部调用
        {
            if (ImagePath == "")
            {
                return("");
            }

            byte[]             buffer = new byte[0];
            System.IO.FileInfo fi     = new System.IO.FileInfo(ImagePath);
            long len = fi.Length;

            System.IO.FileStream fs = new System.IO.FileStream(ImagePath, System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.Read);
            buffer = new byte[len];
            fs.Read(buffer, 0, (int)len);
            fs.Close();

            return(Convert.ToBase64String(buffer));
        }
Exemple #59
0
 private byte[] GetFile(string s)
 {
     try
     {
         System.IO.FileStream fs = System.IO.File.OpenRead(s);
         byte[] data             = new byte[fs.Length];
         int    br = fs.Read(data, 0, data.Length);
         if (br != fs.Length)
         {
             throw new System.IO.IOException(s);
         }
         return(data);
     }
     catch (Exception exception)
     {
         return(null);
     }
 }
        public byte[] GetContent()
        {
            if (!Exists())
            {
                return(null);
            }
            System.IO.FileStream fs = System.IO.File.OpenRead(FilePathAndName);
            byte[] data             = new byte[fs.Length];
            int    br = fs.Read(data, 0, data.Length);

            if (br != fs.Length)
            {
                throw new System.IO.IOException(FilePathAndName);
            }

            fs.Close();
            return(data);
        }