178 lines
5.9 KiB
C#
178 lines
5.9 KiB
C#
using FarPoint.Win.Spread.Model;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
|
|
namespace FCOMMON
|
|
{
|
|
public partial class fFileExplorer : fBase
|
|
{
|
|
string p = string.Empty;
|
|
public fFileExplorer(string path_)
|
|
{
|
|
InitializeComponent();
|
|
this.p = path_;
|
|
this.StartPosition = FormStartPosition.CenterScreen;
|
|
}
|
|
|
|
private void fFileExplorer_Load(object sender, EventArgs e)
|
|
{
|
|
EnsureVisibleAndUsableSize();
|
|
Application.DoEvents();
|
|
RefreshPath();
|
|
|
|
}
|
|
|
|
void RefreshPath()
|
|
{
|
|
if (System.IO.Directory.Exists(this.p) == false)
|
|
{
|
|
Util.MsgE("지정된 폴더가 존재하지 않습니다");
|
|
return;
|
|
}
|
|
else
|
|
{
|
|
this.listView1.Items.Clear();
|
|
var di = new System.IO.DirectoryInfo(this.p);
|
|
foreach (var item in di.GetFiles())
|
|
{
|
|
var lv = this.listView1.Items.Add(item.Name);
|
|
lv.SubItems.Add(item.Extension);
|
|
lv.SubItems.Add(item.Length.ToString());
|
|
lv.SubItems.Add(item.LastWriteTime.ToString("yy-MM-dd HH:mm:ss"));
|
|
lv.Tag = item;
|
|
}
|
|
}
|
|
}
|
|
|
|
private void 새로고침ToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
RefreshPath();
|
|
}
|
|
|
|
private void toolStripButton1_Click(object sender, EventArgs e)
|
|
{
|
|
//추가
|
|
var od = new OpenFileDialog();
|
|
if (od.ShowDialog() != DialogResult.OK) return;
|
|
|
|
var fi = new System.IO.FileInfo(od.FileName);
|
|
var newpath = System.IO.Path.Combine(this.p, fi.Name);
|
|
if (System.IO.File.Exists(newpath))
|
|
{
|
|
if (FCOMMON.Util.MsgQ("이미 존재하는 파일명입니다. 덮어쓸까요?") != DialogResult.Yes) return;
|
|
}
|
|
try
|
|
{
|
|
System.IO.File.Copy(od.FileName, newpath, true);
|
|
FCOMMON.Util.MsgI("파일 저장 완료\r\n파일명:" + fi.Name);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
FCOMMON.Util.MsgE(ex.Message);
|
|
}
|
|
RefreshPath();
|
|
}
|
|
|
|
private void toolStripButton2_Click(object sender, EventArgs e)
|
|
{
|
|
//다운로드
|
|
if (this.listView1.FocusedItem == null) return;
|
|
var lv = this.listView1.FocusedItem;
|
|
var oldfile = lv.Tag as System.IO.FileInfo;//.ToString();
|
|
|
|
var sd = new SaveFileDialog();
|
|
sd.Filter = oldfile.Extension + "|" + oldfile.Extension.Replace(".", "*.");
|
|
sd.FilterIndex = 0;
|
|
sd.FileName = oldfile.Name;
|
|
|
|
if (sd.ShowDialog() != DialogResult.OK) return;
|
|
//var newpath = System.IO.Path.Combine(this.p, sd.FileName);
|
|
if (System.IO.File.Exists(sd.FileName))
|
|
{
|
|
if (FCOMMON.Util.MsgQ("이미 존재하는 파일명입니다. 덮어쓸까요?") != DialogResult.Yes) return;
|
|
}
|
|
try
|
|
{
|
|
System.IO.File.Copy(oldfile.FullName, sd.FileName, true);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
FCOMMON.Util.MsgE(ex.Message);
|
|
}
|
|
RefreshPath();
|
|
}
|
|
|
|
private void toolStripButton3_Click(object sender, EventArgs e)
|
|
{
|
|
//삭제
|
|
if (this.listView1.FocusedItem == null) return;
|
|
var lv = this.listView1.FocusedItem;
|
|
var newpath = lv.Tag as System.IO.FileInfo;//.ToString();
|
|
|
|
//var newpath = System.IO.Path.Combine(this.p, od.FileName);
|
|
if (System.IO.File.Exists(newpath.FullName) == false)
|
|
{
|
|
Util.MsgE("해당 파일이 존재하지 않습니다");
|
|
return;
|
|
}
|
|
|
|
if (FCOMMON.Util.MsgQ("파일을 삭제할까요?") != DialogResult.Yes) return;
|
|
try
|
|
{
|
|
System.IO.File.Delete(newpath.FullName);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
FCOMMON.Util.MsgE(ex.Message);
|
|
}
|
|
RefreshPath();
|
|
}
|
|
|
|
private void toolStripButton4_Click(object sender, EventArgs e)
|
|
{
|
|
RefreshPath();
|
|
}
|
|
|
|
private void listView1_DragEnter(object sender, DragEventArgs e)
|
|
{
|
|
e.Effect = DragDropEffects.All;
|
|
}
|
|
|
|
private void fFileExplorer_DragDrop(object sender, DragEventArgs e)
|
|
{
|
|
var files = (string[])e.Data.GetData(DataFormats.FileDrop, false);
|
|
foreach (var item in files)
|
|
{
|
|
var fi = new System.IO.FileInfo(item);
|
|
var newpath = System.IO.Path.Combine(this.p, fi.Name);
|
|
if (System.IO.File.Exists(newpath))
|
|
{
|
|
if (FCOMMON.Util.MsgQ("이미 존재하는 파일명입니다.\r\n" + fi.Name + "\r\n덮어쓸까요?") != DialogResult.Yes) return;
|
|
}
|
|
try
|
|
{
|
|
System.IO.File.Copy(item, newpath, true);
|
|
FCOMMON.Util.MsgI("파일 저장 완료\r\n파일명:" + fi.Name);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
FCOMMON.Util.MsgE(ex.Message);
|
|
}
|
|
}
|
|
RefreshPath();
|
|
}
|
|
|
|
private void listView1_DragLeave(object sender, EventArgs e)
|
|
{
|
|
//this.listView1.DoDragDrop();
|
|
}
|
|
}
|
|
}
|