管道基础大数据平台系统开发-【CS】-ExportMap
13693261870
2023-08-24 58eee793bd48a558c275cac04ec576b7e6666b26
修改获取文件大小的方法
已修改5个文件
86 ■■■■■ 文件已修改
DataLoader/CS/Importor.cs 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataLoader/CS/StaticData.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataLoader/CS/Tools.cs 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataLoader/MainWindow.xaml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataLoader/Model/ViewData.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataLoader/CS/Importor.cs
@@ -91,13 +91,15 @@
        /// </summary>
        private static void SetSysMeta(ViewData vd)
        {
            long sizes = GetFileSizes(vd);
            SysMeta meta = new SysMeta();
            meta.eventid = Guid.NewGuid().ToString();
            meta.metaid = 0;
            meta.verid = 0;
            meta.guid = null;
            meta.path = vd.FilePath; // *
            meta.sizes = GetFileSizes(vd);
            meta.sizes = Tools.SizeToMb(sizes);
            meta.tab = null;
            meta.rows = 0;
            meta.create_user = CommonProp.UserId;
@@ -112,25 +114,35 @@
            meta.acq_time = CommonProp.AcqTime;
            vd.Meta = meta;
            vd.Sizes = meta.sizes;
            vd.Sizes = Tools.FormatBytes(sizes);
        }
        /// <summary>
        /// 获取文件大小
        /// </summary>
        private static double GetFileSizes(ViewData vd)
        private static long GetFileSizes(ViewData vd)
        {
            if (File.Exists(vd.FilePath))
            {
                if (vd.Ext == StaticData.SHP)
                switch (vd.Ext)
                {
                    List<string> files = GetShpFiles(vd.FilePath);
                    return GetFileSizes(files.ToArray());
                }
                else
                {
                    FileInfo fi = new FileInfo(vd.FilePath);
                    return Tools.SizeToMb(fi.Length);
                    case StaticData.MPT:
                        return GetFileSizes(GetExtFiles(vd, StaticData.MPT_EXT));
                    case StaticData.JPG:
                        return GetFileSizes(GetExtFiles(vd, StaticData.JPG_EXT));
                    case StaticData.JP2:
                        return GetFileSizes(GetExtFiles(vd, StaticData.JP2_EXT));
                    case StaticData.IMG:
                        return GetFileSizes(GetExtFiles(vd, StaticData.IMG_EXT));
                    case StaticData.TIF:
                        return GetFileSizes(GetExtFiles(vd, StaticData.TIF_EXT));
                    case StaticData.TIFF:
                        return GetFileSizes(GetExtFiles(vd, StaticData.TIFF_EXT));
                    case StaticData.SHP:
                        return GetFileSizes(GetExtFiles(vd, StaticData.SHP_EXT));
                    default:
                        FileInfo fi = new FileInfo(vd.FilePath);
                        return fi.Length;
                }
            }
@@ -146,15 +158,15 @@
        /// <summary>
        /// 获取文件大小
        /// </summary>
        private static double GetFileSizes(string[] files)
        private static long GetFileSizes(string[] files)
        {
            if (null == files || files.Length == 0) return 0;
            double sizes = 0;
            long sizes = 0;
            foreach (string file in files)
            {
                FileInfo fi = new FileInfo(file);
                sizes += Tools.SizeToMb(fi.Length);
                sizes += fi.Length;
            }
            return sizes;
@@ -163,21 +175,21 @@
        /// <summary>
        /// 获取SHP文件集合
        /// </summary>
        private static List<string> GetShpFiles(string shpPath)
        private static string[] GetExtFiles(ViewData vd, List<string> exts)
        {
            List<string> files = new List<string>();
            files.Add(shpPath);
            files.Add(vd.FilePath);
            foreach (string ext in StaticData.SHP_EXT)
            foreach (string ext in exts)
            {
                string file = shpPath.Replace(".shp", ext);
                string file = vd.FilePath.Replace(vd.Ext, ext);
                if (File.Exists(file))
                {
                    files.Add(file);
                }
            }
            return files;
            return files.ToArray();
        }
        /// <summary>
@@ -277,8 +289,7 @@
            {
                if (vd.Ext == StaticData.SHP)
                {
                    List<string> files = GetShpFiles(vd.FilePath);
                    return GetFilesMD5(files.ToArray());
                    return GetFilesMD5(GetExtFiles(vd, StaticData.SHP_EXT));
                }
                else
                {
@@ -342,6 +353,9 @@
                case StaticData.JPG:
                    copyMultiFile(vd, StaticData.JPG_EXT);
                    break;
                case StaticData.JP2:
                    copyMultiFile(vd, StaticData.JP2_EXT);
                    break;
                case StaticData.IMG:
                    copyMultiFile(vd, StaticData.IMG_EXT);
                    break;
@@ -383,7 +397,7 @@
            {
                try
                {
                    string target=source.Replace(vd.FilePath, targetFolder);
                    string target = source.Replace(vd.FilePath, targetFolder);
                    count++;
                }
                catch (Exception ex)
DataLoader/CS/StaticData.cs
@@ -26,6 +26,8 @@
        public const String JPG = ".jpg";
        public const String JP2 = ".jp2";
        public const String IMG = ".img";
        public const String MPT = ".mpt";
DataLoader/CS/Tools.cs
@@ -9,8 +9,6 @@
using System.Net.Sockets;
using System.Net;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
namespace DataLoader.CS
{
@@ -47,7 +45,7 @@
        /// </summary>
        public static string FormatBytes(long bytes)
        {
            string[] Suffix = { "Byte", "KB", "MB", "GB", "TB" };
            string[] Suffix = { "B", "KB", "MB", "GB", "TB" }; // Byte
            int i = 0;
            double dblSByte = bytes;
@@ -55,7 +53,7 @@
                for (i = 0; (bytes / 1024) > 0; i++, bytes /= 1024)
                    dblSByte = bytes / 1024.0;
            return String.Format("{0:0.##}{1}", dblSByte, Suffix[i]);
            return string.Format("{0:0.##} {1}", dblSByte, Suffix[i]);
        }
        /// <summary>
@@ -68,9 +66,19 @@
                return 0.001;
            }
            String str = string.Format("{0:F3}", size / 1024.0 / 1024.0);
            string str = string.Format("{0:F3}", size / 1024.0 / 1024.0);
            return Double.Parse(str);
            return double.Parse(str);
        }
        /// <summary>
        /// 保留3位小数
        /// </summary>
        public static double Round3(double val)
        {
            string str = string.Format("{0:F3}", val);
            return double.Parse(str);
        }
        /// <summary>
DataLoader/MainWindow.xaml
@@ -212,7 +212,7 @@
                                </GridViewColumn.CellTemplate>
                            </GridViewColumn>
                            <GridViewColumn Header="路径" Width="Auto" DisplayMemberBinding="{Binding Path=FilePath, Mode=OneWay}"/>
                            <GridViewColumn Header="大小(MB)" Width="Auto" DisplayMemberBinding="{Binding Path=Sizes, Mode=OneWay}"/>
                            <GridViewColumn Header="文件大小" Width="Auto" DisplayMemberBinding="{Binding Path=Sizes, Mode=OneWay}"/>
                            <GridViewColumn Header="运行状态" Width="120" DisplayMemberBinding="{Binding Path=Status, Mode=OneWay}"/>
                        </GridView.Columns>
                    </GridView>
DataLoader/Model/ViewData.cs
@@ -53,9 +53,9 @@
            }
        }
        private double _sizes;
        private string _sizes;
        public double Sizes
        public string Sizes
        {
            set
            {