/// <summary> /// XMLファイルからパラメータを読み込む /// </summary> /// <typeparam name="T"> /// 読み込むパラメータ型.シリアライズ可能なものである必要がある. /// </typeparam> /// <param name="trg">出力引数.読み込んだデータを設定する対象.</param> /// <param name="fn">XMLのファイル名</param> static public void LoadFromXmlFile <T>(out T trg, string fn) { try { //読み込むファイルを開く global::System.IO.FileStream fs = new global::System.IO.FileStream( fn, global::System.IO.FileMode.Open, global::System.IO.FileAccess.Read); //XmlSerializerオブジェクトを作成 global::System.Xml.Serialization.XmlSerializer serializer = new global::System.Xml.Serialization.XmlSerializer(typeof(T)); //XMLファイルから読み込み、逆シリアル化する T obj = (T)serializer.Deserialize(fs); //ファイルを閉じる fs.Close(); // modified 2014, Apr 30 by Okuda, // Is it OK?? //trg = DeepClone<T>(obj); trg = obj; } catch { trg = default(T); } }
public static string GenerateBarCode(string id) { QRCodeEncoder qrCodeEncoder = new QRCodeEncoder(); qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE; qrCodeEncoder.QRCodeScale = 4; // qrCodeEncoder.QRCodeVersion = 4; qrCodeEncoder.QRCodeVersion = 0; qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M; //System.Drawing.Image image = qrCodeEncoder.Encode("4408810820 深圳-广州 小江"); global::System.Drawing.Image image = qrCodeEncoder.Encode(id); string filename = Guid.NewGuid().ToString() + ".jpg"; string fileMonthPath = System.Web.HttpContext.Current.Server.MapPath(@"~\UploadFile") + "\\" + DateTime.Now.ToString("yyyyMM"); if (!System.IO.Directory.Exists(fileMonthPath)) { System.IO.Directory.CreateDirectory(fileMonthPath); } string filepath = fileMonthPath + "\\" + filename; global::System.IO.FileStream fs = new global::System.IO.FileStream(filepath, global::System.IO.FileMode.OpenOrCreate, global::System.IO.FileAccess.Write); image.Save(fs, global::System.Drawing.Imaging.ImageFormat.Jpeg); fs.Close(); image.Dispose(); return(@"../../UploadFile/" + DateTime.Now.ToString("yyyyMM") + "/" + filename); }
/// <summary> /// パラメータファイルをXMLファイルにシリアライズして書き出す. /// </summary> /// <typeparam name="T">パラメータ型.シリアライズ可能な型が必要.</typeparam> /// <param name="trg">書き出す対象となるパラメータクラスor構造体</param> /// <param name="fn">書き出すXMLファイル名</param> static public void WriteToXmlFile <T>(T trg, string fn) { //XmlSerializerオブジェクトを作成 //オブジェクトの型を指定する global::System.Xml.Serialization.XmlSerializer serializer = new global::System.Xml.Serialization.XmlSerializer(typeof(T)); try { //書き込むファイルを開く global::System.IO.FileStream fs = new global::System.IO.FileStream( fn, global::System.IO.FileMode.Create); //シリアル化し、XMLファイルに保存する serializer.Serialize(fs, trg); //ファイルを閉じる fs.Close(); } catch (Exception) { global::System.Windows.Forms.MessageBox.Show("設定ファイル" + fn + "が書き込みモードで開けません.", "Error"); } }