ファイルウィンドウを開く、ファイルウィンドウ、ファイルフローを保存する方法
ファイルウィンドウを開けて、ファイルウィンドウ、ファイルストリームの方法を保存して、くだらない話は多く言わないで、直接コードをつけます
using System;
using System.Data;
using System.Windows.Forms;
using System.Data.SQLite;
using System.IO;
using System.Diagnostics;
namespace IpadDataConvert
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
}
///
///
///
///
///
private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Filter = "JPEG (*.jpg;*.jpeg;*.jpe;*.jfjf)|*.jpg;*.jpeg;*.jpe;*.jfjf|PNG (*.png)|*.png;| (*.*)|*.jpg;*.jpeg;*.jpe;*.jfjf;*.png";
openFileDialog.FilterIndex = 0;
openFileDialog.RestoreDirectory = true;
openFileDialog.Title = " ";
openFileDialog.AddExtension = true;//
if (openFileDialog.ShowDialog() != DialogResult.OK)
{
return;
}
if (string.IsNullOrEmpty(openFileDialog.FileName))
{
return;
}
string imageWithPath = openFileDialog.FileName;
string sql = "INSERT INTO Item(title,image) VALUES(?, ?)";
MessageBox.Show(SQLiteDbHelper.Instance.ExecuteNonQuery(sql, new SQLiteParameter("", "test"), new SQLiteParameter("", GetImageData(imageWithPath))).ToString() + " ");
}
///
///
///
///
///
private byte[] GetImageData(string imageWithPath)
{
FileStream fs = new FileStream(imageWithPath, FileMode.Open);
byte[] imageData = new byte[fs.Length];
fs.Read(imageData, 0, imageData.Length);
byte[] imageDataAES = AES.AESEncrypt(imageData);
fs.Close();
return imageDataAES;
}
///
///
///
///
///
private void button2_Click(object sender, EventArgs e)
{
string sql = "SELECT * FROM Item WHERE title = ?";
DataTable dt = SQLiteDbHelper.Instance.CreateDataTable(sql, new SQLiteParameter("", "test"));
Item item = new Item();
item.Title = dt.Rows[0]["title"].ToString();
item.ImageByte = (byte[])dt.Rows[0]["image"];
item.ImageByte = AES.AESDecrypt(item.ImageByte);
SaveImage(item);
}
///
///
///
///
private static void SaveImage(Item item)
{
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Filter = "JPEG (*.jpg;*.jpeg;*.jpe;*.jfjf)|*.jpg;*.jpeg;*.jpe;*.jfjf|PNG (*.png)|*.png;| (*.*)|*.jpg;*.jpeg;*.jpe;*.jfjf;*.png";
saveFileDialog.FilterIndex = 0;
saveFileDialog.RestoreDirectory = true;
saveFileDialog.CreatePrompt = true;
saveFileDialog.Title = " ";
saveFileDialog.FileName = item.Title;
saveFileDialog.AddExtension = true;//
saveFileDialog.OverwritePrompt = true;//
saveFileDialog.CreatePrompt = false;//
if (saveFileDialog.ShowDialog() != DialogResult.OK)
{
return;
}
if (string.IsNullOrEmpty(saveFileDialog.FileName))
{
MessageBox.Show(" !");
return;
}
string imageWithPath = saveFileDialog.FileName;
using (MemoryStream ms = new MemoryStream(item.ImageByte))
{
using (FileStream fs = new FileStream(imageWithPath, FileMode.Create, FileAccess.Write))
{
byte[] data = ms.ToArray();
fs.Write(data, 0, data.Length);
fs.Flush();
}
}
MessageBox.Show(" !");
}
}
}