Example #1
0
 /// <summary>
 ///   バックアップファイルから復元する
 /// </summary>
 /// <param name="filepath">ファイル名</param>
 /// <param name="db">DB接続</param>
 /// <param name="password">ZIPパスワード</param>
 /// <param name="aesEncryption">AES符号化を用いるかどうか</param>
 /// <param name="truncateFlag">テーブルを全てTruncateするかどうか</param>
 /// <returns>復元したテーブル数</returns>
 /// <remarks>
 ///   <para>
 ///     ファイル読み取りの前に、テーブルの全レコードが削除されます。
 ///     不適切なフォーマットのレコードは無視されます。
 ///   </para>
 /// </remarks>
 public int Load(string filepath, DBCon db, string password = null, bool aesEncryption = false, bool truncateFlag = false)
 {
     db.LOG_DEBUG("Loading backup file {0}", filepath);
     using (Stream sr = FileUtil.BinaryReader(filepath)) {
         if (sr == null)
         {
             throw new IOException(String.Format("Can't open {0} for reading.", filepath));
         }
         return(Load(sr, db, password, aesEncryption, truncateFlag));
     }
 }
Example #2
0
 /// <summary>
 ///   クライアントにファイルを送信する
 /// </summary>
 /// <param name="realfilename">ファイル名(フルパス)</param>
 /// <param name="filename">クライアントに通知するファイル名</param>
 /// <param name="mime">MIMEタイプ名(Content-type)</param>
 protected void SendFile(string realfilename, string filename, string mime)
 {
     if (String.IsNullOrEmpty(realfilename))
     {
         throw new ArgumentNullException("Real file name is not specified.");
     }
     using (FileStream fs = FileUtil.BinaryReader(realfilename)) {
         if (fs == null)
         {
             throw new IOException(String.Format("Can't open {0} for reading", realfilename));
         }
         SendFile(fs, filename, mime);
     }
 }
Example #3
0
 /// <summary>
 ///   ファイルを読み取り用にオープンする
 /// </summary>
 protected Stream OpenFile(string path)
 {
     if (File.Exists(path))
     {
         return(FileUtil.BinaryReader(path));
     }
     if (!path.StartsWith(m_dir) || (m_contents == null))
     {
         return(null);
     }
     path = path.Substring(m_dir.Length).Replace('\\', '/');
     foreach (HttpBuiltinContent c in m_contents)
     {
         if (c.m_filename == path)
         {
             return(new MemoryStream(c.m_content, false));
         }
     }
     return(null);
 }