Пример #1
0
        /// <summary>
        /// T is a object.
        /// By default file will be saved on local machine desktop.
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="source"></param>
        /// <param name="path"></param>
        /// <param name="fileType"></param>
        /// <returns>Awaitable task.</returns>
        public static async System.Threading.Tasks.Task ToCsv <T>(this T source, string path = null, FileExtensionEnum fileType = FileExtensionEnum.Csv) where T : class
        {
            source.ThrowIfNull();
            System.Text.StringBuilder builder = new System.Text.StringBuilder();
            if (!string.IsNullOrEmpty(path))
            {
                builder.Append(path).Append(fileType);
            }
            else
            {
                builder.Clear()
                .Append(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Desktop)).Append('/')
                .Append(System.DateTime.Now.ToShortDateString().Replace('/', '-')).Append('.');
                builder.Append(fileType);
            }

            var propertiesInfo = source.GetType().GetProperties().Select(x => x.Name);
            var objects        = propertiesInfo as System.Collections.Generic.IList <string> ?? propertiesInfo.ToList();

            objects.ThrowIfNull();

            using (System.IO.FileStream stream = System.IO.File.Create(builder.ToString()))
            {
                // Property name write.
                builder.Clear();
                foreach (var s in objects)
                {
                    if (s == objects.LastOrDefault())
                    {
                        builder.Append(s);
                        continue;
                    }
                    builder.Append(s).Append(',');
                }

                byte[] text = new System.Text.UTF8Encoding(true).GetBytes(builder + System.Environment.NewLine);
                await stream.WriteAsync(text, 0, text.Length);

                // Property value write.
                builder.Clear();
                foreach (var s in objects)
                {
                    var value = source.GetType().GetProperty(s)?.GetValue(source, null);
                    if (s == objects.LastOrDefault())
                    {
                        builder.Append(value);
                        continue;
                    }
                    builder.Append(value).Append(',');
                }
                text = new System.Text.UTF8Encoding(true).GetBytes(builder.ToString());
                await stream.WriteAsync(text, 0, builder.Length);
            }
        }
        public async Task<IHttpActionResult> Post()
        {
            if (!Request.Content.IsMimeMultipartContent())
            {
                return BadRequest();
            }
            var provider = new MultipartMemoryStreamProvider();
            // путь к папке на сервере
            string root = System.Web.HttpContext.Current.Server.MapPath("~/UploadedFiles/");
            await Request.Content.ReadAsMultipartAsync(provider);

            foreach (var file in provider.Contents)
            {
                var filename = file.Headers.ContentDisposition.FileName.Trim('\"');
                byte[] fileArray = await file.ReadAsByteArrayAsync();

                using (System.IO.FileStream fs = new System.IO.FileStream(root + filename, System.IO.FileMode.Create))
                {
                    await fs.WriteAsync(fileArray, 0, fileArray.Length);
                }
                var temp = users.GetById(Convert.ToInt32(User.Identity.Name));
                temp.Photo = "UploadedFiles/" + filename;
                users.Edit(temp);
            }

            return Ok("OK");
        }
        static int _m_WriteAsync(RealStatePtr L)
        {
            try {
                ObjectTranslator translator = ObjectTranslatorPool.Instance.Find(L);


                System.IO.FileStream gen_to_be_invoked = (System.IO.FileStream)translator.FastGetCSObj(L, 1);



                {
                    byte[] _buffer = LuaAPI.lua_tobytes(L, 2);
                    int    _offset = LuaAPI.xlua_tointeger(L, 3);
                    int    _count  = LuaAPI.xlua_tointeger(L, 4);
                    System.Threading.CancellationToken _cancellationToken; translator.Get(L, 5, out _cancellationToken);

                    System.Threading.Tasks.Task gen_ret = gen_to_be_invoked.WriteAsync(_buffer, _offset, _count, _cancellationToken);
                    translator.Push(L, gen_ret);



                    return(1);
                }
            } catch (System.Exception gen_e) {
                return(LuaAPI.luaL_error(L, "c# exception:" + gen_e));
            }
        }
Пример #4
0
        public static async Task LoadDefaultCover()
        {
            try
            {
                if (System.IO.File.Exists(Constants.DefaultCover))
                {
                    return;
                }

                var    assembly = System.Reflection.Assembly.GetExecutingAssembly();
                byte[] bytes    = null;
                using (var defaultCover = assembly.GetManifestResourceStream("ComicsShelf.Helpers.DefaultCover.DefaultCover.png"))
                {
                    bytes = new byte[defaultCover.Length];
                    await defaultCover.ReadAsync(bytes, 0, bytes.Length);
                }
                if (bytes == null || bytes.Length == 0)
                {
                    return;
                }

                using (var streamWriter = new System.IO.FileStream(Constants.DefaultCover, System.IO.FileMode.Create, System.IO.FileAccess.Write))
                {
                    await streamWriter.WriteAsync(bytes, 0, bytes.Length);
                }

                assembly = null;
            }
            catch (Exception) { throw; }
        }
Пример #5
0
        public async Task <IHttpActionResult> Upload()
        {
            if (!Request.Content.IsMimeMultipartContent())
            {
                return(BadRequest());
            }
            var    provider = new MultipartMemoryStreamProvider();
            string root     = System.Web.HttpContext.Current.Server.MapPath("~/Content/");
            await Request.Content.ReadAsMultipartAsync(provider);

            string path = string.Empty;

            foreach (var file in provider.Contents)
            {
                var    filename  = Guid.NewGuid().ToString() + file.Headers.ContentDisposition.FileName.Trim('\"');
                byte[] fileArray = await file.ReadAsByteArrayAsync();

                using (System.IO.FileStream fs = new System.IO.FileStream(root + filename, System.IO.FileMode.Create))
                {
                    await fs.WriteAsync(fileArray, 0, fileArray.Length);
                }

                path = "/Content/" + filename;
            }
            return(Ok(new { link = path }));
        }
        async Task SaveImage(BitmapSource bmp, string fileName)
        {
            //MessageBox.Show("OK");
            using (var stream = new System.IO.FileStream(fileName, System.IO.FileMode.Create))
            {
                BmpBitmapEncoder       encoder      = new BmpBitmapEncoder();
                System.IO.MemoryStream memoryStream = new System.IO.MemoryStream();
                BitmapImage            bImg         = new BitmapImage();

                encoder.Frames.Add(BitmapFrame.Create(bmp));
                encoder.Save(memoryStream);

                //memoryStream.Position = 0;
                //bImg.BeginInit();
                //bImg.StreamSource = memoryStream;
                //bImg.EndInit();

                //memoryStream.Close();
                //bImg.Freeze();
                //var s = bImg.StreamSource;
                var buf = new byte[1024];
                memoryStream.Position = 0;
                for (int nn; (nn = await memoryStream.ReadAsync(buf, 0, buf.Length)) != 0;)
                {
                    await stream.WriteAsync(buf, 0, nn);
                }
                stream.Close();
            }
        }
Пример #7
0
        public async Task <IHttpActionResult> Post()
        {
            if (!Request.Content.IsMimeMultipartContent())
            {
                return(BadRequest());
            }
            var provider = new MultipartMemoryStreamProvider();

            string root = System.Web.HttpContext.Current.Server.MapPath("~/Files/");
            await Request.Content.ReadAsMultipartAsync(provider);

            foreach (var file in provider.Contents)
            {
                var    filename  = file.Headers.ContentDisposition.FileName.Trim('\"');
                byte[] fileArray = await file.ReadAsByteArrayAsync();

                using (System.IO.FileStream fs = new System.IO.FileStream(root + filename, System.IO.FileMode.Create))
                {
                    await fs.WriteAsync(fileArray, 0, fileArray.Length);

                    db.Songs.Add(FileService.GetSong(filename));
                }
            }
            db.SaveChanges();
            return(Ok("Загрузка завершена"));
        }
        public async Task WriteVideoFile(byte[] video, string fileName, string filePath)
        {
            string ff = System.IO.Path.Combine(filePath, fileName);

            using (System.IO.FileStream SourceStream = System.IO.File.Open(ff, System.IO.FileMode.OpenOrCreate))
            {
                SourceStream.Seek(0, System.IO.SeekOrigin.End);
                await SourceStream.WriteAsync(video, 0, video.Length);
            }
        }
Пример #9
0
        public static async Task <bool> SaveAs(string name, string json)
        {
            string file = $"{Folder.Path}\\{name}";

            byte[] byteA = Encoding.UTF8.GetBytes(json);

            using System.IO.FileStream fileStream = Create(file);
            await fileStream.WriteAsync(byteA, 0, byteA.Length);

            return(Exists(file));
        }
Пример #10
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public String GetCertifyFile()
        {
            String result = String.Empty;

            // User Data
            String userName = "******";
            String password = "******";

            String id = "1244eaaa-9cbe-434a-a3eb-762fa8be865f";

            // POST Data
            var postData = new
            {
                UserName = userName,
                Password = password,
                Id       = id.ToUpper()
            };

            // Xml Data
            var xmlData = String.Format(@"
                <GetCertifyFileRequest xmlns='https://sms.didimo.es/wcf/GetCertifyFileRequest'>
                  <UserName>{0}</UserName>
                  <Password>{1}</Password>
                  <Id>{2}</Id>
                </GetCertifyFileRequest>
            ", postData.UserName, postData.Password, postData.Id);

            byte[] buffer;
            String fileName = String.Format("message_{0}.pdf", id);;

            try
            {
                // Execute
                buffer = this.ExecuteAndDownload(Helper.RestOperations.GetCertifyFile, xmlData, ref fileName);
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }

            String fileDirectory = @"C:\SMSCertifies\sms.didimo\";

            using (System.IO.FileStream fs = new System.IO.FileStream(System.IO.Path.Combine(fileDirectory, fileName), System.IO.FileMode.OpenOrCreate))
            {
                fs.WriteAsync(buffer, 0, buffer.Length).Wait();
            }

            result = String.Format("File saved on {0}", System.IO.Path.Combine(fileDirectory, fileName));

            return(result);
        }
Пример #11
0
        public async Task RunAsync()
        {
            var apks = CommandRunner.Instance.GetInstalledPackagesApkInformation( );

            this.LogDebug("Initializing APK Cache");
            foreach (var item in apks)
            {
                var lvi = new ApkPackageListViewItem(item);

                // cant uninstall if we dont know the package
                if (string.IsNullOrEmpty(lvi.ApkInformation.Package))
                {
                    continue;
                }

                string keyName = lvi.ApkInformation.DevicePath;
                if (keyName.StartsWith("/"))
                {
                    keyName = keyName.Substring(1);
                }
                keyName = keyName.Replace("/", ".");

                if (!Program.SystemIcons.ContainsKey(keyName))
                {
                    // get apk and extract the app icon
                    var img = CommandRunner.Instance.GetLocalApkIconImage(item.LocalApk);

                    if (img == null)
                    {
                        img = DroidExplorer.Resources.Images.package32;
                    }
                    else
                    {
                        using (System.IO.MemoryStream stream = new System.IO.MemoryStream()) {
                            string fileName = System.IO.Path.Combine(System.IO.Path.Combine(CommandRunner.Settings.UserDataDirectory, Cache.APK_IMAGE_CACHE), string.Format("{0}.png", keyName));
                            img.Save(stream, ImageFormat.Png);
                            stream.Position = 0;
                            using (System.IO.FileStream fs = new System.IO.FileStream(fileName, System.IO.FileMode.Create, System.IO.FileAccess.Write)) {
                                byte[] buffer    = new byte[2048];
                                int    readBytes = 0;
                                while ((readBytes = await stream.ReadAsync(buffer, 0, buffer.Length)) != 0)
                                {
                                    await fs.WriteAsync(buffer, 0, readBytes);
                                }
                            }
                        }
                    }
                    //SystemImageListHost.Instance.AddFileTypeImage ( keyName, img, img );
                }
            }
        }
Пример #12
0
        private async void SaveToFile(string[] fileNames)
        {
            var filename = fileNames.FirstOrDefault();

            if (string.IsNullOrEmpty(filename))
            {
                return;
            }
            using (var stream = new System.IO.FileStream(filename, System.IO.FileMode.Create, System.IO.FileAccess.Write))
            {
                var bytes = System.Text.Encoding.UTF8.GetBytes(this.Text);
                await stream.WriteAsync(bytes, 0, bytes.Length).ConfigureAwait(false);
            }
        }
Пример #13
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public String GetCertifyFile()
        {
            String result = String.Empty;

            // User Data
            String userName = "******";
            String password = "******";

            String id = "1244eaaa-9cbe-434a-a3eb-762fa8be865f";

            // POST Data
            var postData = new
            {
                user     = userName,
                password = password,
                id       = id.ToUpper()
            };

            NameValueCollection parameters = new NameValueCollection();

            postData.GetType().GetProperties()
            .ToList()
            .ForEach(pi => parameters.Add(pi.Name, pi.GetValue(postData, null).ToString()));

            byte[] buffer;
            String fileName = String.Format("message_{0}.pdf", id);;

            try
            {
                // Execute
                buffer = this.ExecuteAndDownload(Helper.UrlOperations.GetCertifyFile, parameters, ref fileName);
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }

            String fileDirectory = @"C:\SMSCertifies\sms.didimo\";

            using (System.IO.FileStream fs = new System.IO.FileStream(System.IO.Path.Combine(fileDirectory, fileName), System.IO.FileMode.OpenOrCreate))
            {
                fs.WriteAsync(buffer, 0, buffer.Length).Wait();
            }

            result = String.Format("File saved on {0}", System.IO.Path.Combine(fileDirectory, fileName));

            return(result);
        }
Пример #14
0
        private static void PutUninstaller(string InstallPath)
        {
            var uninstallerPath  = System.IO.Path.Combine(InstallPath, "Uninstall.exe");
            var uninstallerBytes = Properties.Resources.Uninstaller;
            var uninstStream     = new System.IO.FileStream(uninstallerPath, System.IO.FileMode.Create);

            using (var copyPromise = uninstStream.WriteAsync(uninstallerBytes, 0, uninstallerBytes.Length))
                copyPromise.Wait();
            try
            {
                FachadaRegistro.RegistrarDesinstalador(uninstallerPath);
            }
            catch (Exception e_)
            {
                MessageBox.Show(e_.ToString());
            }
        }
Пример #15
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public String GetCertifyFile()
        {
            String result = String.Empty;

            // User Data
            String userName = "******";
            String password = "******";

            String id = "1244eaaa-9cbe-434a-a3eb-762fa8be865f";

            // POST Data
            var postData = new
            {
                UserName = userName,
                Password = password,
                Id       = id.ToUpper()
            };

            // Json Data
            var jsonData = JsonConvert.SerializeObject(postData, Formatting.None);

            byte[] buffer;
            String fileName = String.Format("message_{0}.pdf", id);;

            try
            {
                // Execute
                buffer = this.ExecuteAndDownload(Helper.RestOperations.GetCertifyFile, jsonData, ref fileName);
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }

            String fileDirectory = @"C:\SMSCertifies\sms.didimo\";

            using (System.IO.FileStream fs = new System.IO.FileStream(System.IO.Path.Combine(fileDirectory, fileName), System.IO.FileMode.OpenOrCreate))
            {
                fs.WriteAsync(buffer, 0, buffer.Length).Wait();
            }

            result = String.Format("File saved on {0}", System.IO.Path.Combine(fileDirectory, fileName));

            return(result);
        }
        private async Task WriteAsync(string data)
        {
            byte[] _data = System.Text.Encoding.UTF8.GetBytes(data.ToString());
            await _writeLock.WaitAsync();

            try
            {
                await log.WriteAsync(_data, 0, _data.Length);
            }
            catch (Exception e)
            {
                throw e;
            }
            finally
            {
                _writeLock.Release();
            }
        }
Пример #17
0
        public async Task <IHttpActionResult> Post()
        {
            if (!Request.Content.IsMimeMultipartContent())
            {
                return(BadRequest());
            }
            var provider = new MultipartMemoryStreamProvider();

            string root = System.Web.HttpContext.Current.Server.MapPath("~/Files/");
            await Request.Content.ReadAsMultipartAsync(provider);

            string newFilename = "";

            foreach (var file in provider.Contents)
            {
                var    filename  = file.Headers.ContentDisposition.FileName.Trim('\"');
                byte[] fileArray = await file.ReadAsByteArrayAsync();

                byte[] hash;
                using (SHA1CryptoServiceProvider sha1 = new SHA1CryptoServiceProvider())
                {
                    hash = sha1.ComputeHash(fileArray);
                }

                StringBuilder hashString = new StringBuilder(hash.Length * 2);
                for (int i = 0; i < hash.Length; i++)
                {
                    hashString.Append(hash[i].ToString(true ? "X2" : "x2"));
                }

                newFilename = hashString.ToString();

                if (!System.IO.File.Exists(root + newFilename))
                {
                    using (System.IO.FileStream fs = new System.IO.FileStream(root + newFilename, System.IO.FileMode.Create))
                    {
                        await fs.WriteAsync(fileArray, 0, fileArray.Length);
                    }
                }
            }

            return(Json(new { redirecturl = "/Home/Preview/" + newFilename }));
        }
        public async void Downlaod_mp3_Url(string url, string audioFileName, Xamarin.Forms.ActivityIndicator LoadingDownloadProgress, Xamarin.Forms.Label DownloadingLabel)
        {
            _audioFileName = audioFileName;
            LoadingDownloadProgress.IsRunning = true;
            DownloadingLabel.IsVisible        = true;
            //	Android.Widget.Toast.MakeText(Android.App.Application.Context, _audioFileName + " Downloading..", Android.Widget.ToastLength.Long).Show();
            var webClient = new System.Net.WebClient();

            //var url = new Uri("http://www.maninblack.org/demos/SitDownShutUp.mp3");
            //  string local = "/sdcard/Download/abc.mp3";
            byte[] bytes = null;

            webClient.DownloadProgressChanged += WebClient_DownloadProgressChanged;

            try
            {
                bytes = await webClient.DownloadDataTaskAsync(url);
            }
            catch (System.Threading.Tasks.TaskCanceledException)
            {
                //  Android.Widget.Toast.MakeText(Android.App.Application.Context, "Task Canceled!", Android.Widget.ToastLength.Long).Show();
                return;
            }
            catch (Exception a)
            {
                //Android.Widget.Toast.MakeText(Android.App.Application.Context,a.InnerException.Message, Android.Widget.ToastLength.Long);
                Download_Completed = false;
                return;
            }

            Java.IO.File documentsPath = new Java.IO.File(Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryDownloads), "");
            string       localFilename = documentsPath + "/" + audioFileName;

            //Save the Mp3 using writeAsync

            System.IO.FileStream fs = new System.IO.FileStream(localFilename, System.IO.FileMode.OpenOrCreate);
            await fs.WriteAsync(bytes, 0, bytes.Length);

            fs.Close();
            LoadingDownloadProgress.IsRunning = false;
            DownloadingLabel.IsVisible        = false;
            Download_Completed = false;
        }
Пример #19
0
		public async Task RunAsync() {
			var apks = CommandRunner.Instance.GetInstalledPackagesApkInformation ( );
			this.LogDebug("Initializing APK Cache");
			foreach(var item in apks) {
				var lvi = new ApkPackageListViewItem(item);

				// cant uninstall if we dont know the package
				if(string.IsNullOrEmpty(lvi.ApkInformation.Package)) {
					continue;
				}

				string keyName = lvi.ApkInformation.DevicePath;
				if(keyName.StartsWith("/")) {
					keyName = keyName.Substring(1);
				}
				keyName = keyName.Replace("/", ".");

				if(!Program.SystemIcons.ContainsKey(keyName)) {
					// get apk and extract the app icon
					var img = CommandRunner.Instance.GetLocalApkIconImage(item.LocalApk);

					if(img == null) {
						img = DroidExplorer.Resources.Images.package32;
					} else {
						using(System.IO.MemoryStream stream = new System.IO.MemoryStream()) {
							string fileName = System.IO.Path.Combine(System.IO.Path.Combine(CommandRunner.Settings.UserDataDirectory, Cache.APK_IMAGE_CACHE), string.Format("{0}.png", keyName));
							img.Save(stream, ImageFormat.Png);
							stream.Position = 0;
							using(System.IO.FileStream fs = new System.IO.FileStream(fileName, System.IO.FileMode.Create, System.IO.FileAccess.Write)) {
								byte[] buffer = new byte[2048];
								int readBytes = 0;
								while((readBytes = await stream.ReadAsync(buffer, 0, buffer.Length)) != 0) {
									await fs.WriteAsync(buffer, 0, readBytes);
								}
							}
						}

					}
					//SystemImageListHost.Instance.AddFileTypeImage ( keyName, img, img );

				}
			}
		}
Пример #20
0
        }     // End Task DownloadFileFromHttpResponseMessage

        protected async System.Threading.Tasks.Task ProcessContentStream(
            long?totalDownloadSize
            , System.IO.Stream contentStream
            )
        {
            long totalBytesRead = 0L;
            long readCount      = 0L;

            byte[] buffer       = new byte[8192];
            bool   isMoreToRead = true;

            using (System.IO.Stream stream = new System.IO.FileStream(
                       _destinationFilePath
                       , System.IO.FileMode.Create
                       , System.IO.FileAccess.Write
                       , System.IO.FileShare.None
                       , 8192
                       , true))
            {
                do
                {
                    int bytesRead = await contentStream.ReadAsync(buffer, 0, buffer.Length);

                    if (bytesRead == 0)
                    {
                        isMoreToRead = false;
                        TriggerProgressChanged(totalDownloadSize, totalBytesRead);
                        continue;
                    } // End if (bytesRead == 0)

                    await stream.WriteAsync(buffer, 0, bytesRead);

                    totalBytesRead += bytesRead;
                    readCount      += 1;

                    if (readCount % 100 == 0)
                    {
                        TriggerProgressChanged(totalDownloadSize, totalBytesRead);
                    }
                } while (isMoreToRead);
            } // End Using fs
        }     // End Task ProcessContentStream
Пример #21
0
 /// <summary>
 /// Downloads the file to local machine
 /// </summary>
 /// <param name="localFilePath"></param>
 /// <param name="fileName"></param>
 /// <param name="data"></param>
 /// <returns></returns>
 protected async Task Download(string localFilePath, string fileName, byte[] data)
 {
     if (string.IsNullOrWhiteSpace(localFilePath))
     {
         throw new ArgumentNullException(nameof(localFilePath));
     }
     localFilePath = System.IO.Path.GetDirectoryName(localFilePath);
     if (!System.IO.Directory.Exists(localFilePath))
     {
         System.IO.Directory.CreateDirectory(localFilePath);
     }
     localFilePath = $"{localFilePath}{fileName}";
     using (System.IO.FileStream fileStream = System.IO.File.Create(localFilePath))
     {
         if (data != null)
         {
             await fileStream.WriteAsync(data, 0, data.Length);
         }
     }
 }
Пример #22
0
        public async System.Threading.Tasks.Task <IActionResult> Index(
            System.Collections.Generic.IList <IFormFile> files)
        {
            UploaderController.s_progress = 0;
            long totalBytes = files.Sum(f => f.Length);

            foreach (IFormFile source in files)
            {
                string filename = ContentDispositionHeaderValue
                                  .Parse(source.ContentDisposition).FileName.Value.Trim('"');

                filename = this.EnsureCorrectFilename(filename);

                byte[] buffer = new byte[16 * 1024];

                using (System.IO.FileStream output = System.IO.File.Create(
                           this.GetPathAndFilename(filename)
                           ))
                {
                    using (System.IO.Stream input = source.OpenReadStream())
                    {
                        long totalReadBytes = 0;
                        int  readBytes;

                        while ((readBytes = input.Read(buffer, 0, buffer.Length)) > 0)
                        {
                            await output.WriteAsync(buffer, 0, readBytes);

                            totalReadBytes += readBytes;
                            UploaderController.s_progress = (int)((float)totalReadBytes
                                                                  / (float)totalBytes * 100.0);

                            // It is only to make the process slower
                            await System.Threading.Tasks.Task.Delay(10);
                        } // Whend
                    }     // End Using input
                }         // End Using output
            }             // Next source

            return(this.Content("success"));
        }
Пример #23
0
        // POST api/<controller>
        public async Task <IHttpActionResult> Post()
        {
            if (!Request.Content.IsMimeMultipartContent())
            {
                return(Ok("Файлы не загружены"));
            }
            var provider = new MultipartMemoryStreamProvider();
            // путь к папке на сервере
            string root = System.Web.HttpContext.Current.Server.MapPath("~/uploadedFiles/");
            await Request.Content.ReadAsMultipartAsync(provider);

            var fileLength = 0;
            var filename   = "";

            foreach (var file in provider.Contents)
            {
                filename = file.Headers.ContentDisposition.FileName.Trim('\"');
                //var buffer = await file.ReadAsByteArrayAsync();
                byte[] fileArray = await file.ReadAsByteArrayAsync();

                fileLength = fileArray.Length;
                using (System.IO.FileStream fs = new System.IO.FileStream(root + filename, System.IO.FileMode.Create))
                {
                    await fs.WriteAsync(fileArray, 0, fileArray.Length);
                }
            }

            var fileDto = new RegisterFileDTO
            {
                Name        = filename,
                UserId      = CurrentUserId,
                Description = "Description",
                Size        = fileLength,
                Type        = "jpg"
            };

            _fileService.Create(fileDto);

            return(Ok("файлы загружены"));
        }
Пример #24
0
        public async Task <ElementResponse> AddImageAvatar()
        {
            if (!Request.Content.IsMimeMultipartContent())
            {
                throw new ApplicationException("Ошибка загрузки изображения");
            }

            var idAccount = Guid.Parse(GetAccountId());

            var provider = new MultipartMemoryStreamProvider();

            string root = HttpContext.Current.Server.MapPath("~/Files/Photo/Avatar/");

            Random rnd  = new Random();
            var    code = rnd.Next(1000, 10001);

            var filename = GetAccountId() + code.ToString() + ".jpg";
            var urlDir   = root + filename;
            var urlBd    = $"url(./Files/Photo/Avatar/{filename})";

            await Request.Content.ReadAsMultipartAsync(provider);

            var file = provider.Contents[0];

            byte[] fileArray = await file.ReadAsByteArrayAsync();

            DellImageAvatarBLL.Execute(idAccount);

            using (System.IO.FileStream fs = new System.IO.FileStream(urlDir, System.IO.FileMode.Create))
            {
                await fs.WriteAsync(fileArray, 0, fileArray.Length);
            }

            AddImageAvatarBLL.Execute(idAccount, urlBd, urlDir);

            return(new ElementResponse {
                Txt = urlBd
            });
        }
        public async Task <IHttpActionResult> Post()
        {
            if (!Request.Content.IsMimeMultipartContent())
            {
                return(BadRequest());
            }
            var provider = new MultipartMemoryStreamProvider();

            await Request.Content.ReadAsMultipartAsync(provider);

            foreach (var file in provider.Contents)
            {
                var    filename  = file.Headers.ContentDisposition.FileName.Trim('\"');
                byte[] fileArray = await file.ReadAsByteArrayAsync();

                using (System.IO.FileStream fs = new System.IO.FileStream(cfg.Path2db + filename, System.IO.FileMode.Create))
                {
                    await fs.WriteAsync(fileArray, 0, fileArray.Length);
                }
            }
            return(Ok("файлы загружены"));
        }
Пример #26
0
        public static async Task Run([TimerTrigger("0 0 22 * * 5")] TimerInfo myTimer, TraceWriter log)
        {
            log.Info($"Start MonthlyChartImage at: {DateTime.Now}");

            try
            {
                var appConfig = AppConfig.Load();

                var storageClient = new StorageClient();
                log.Info("Start connect to table storage");
                await storageClient.ConnectAsync(appConfig.StorageConnectionString);

                var yesterday = DateTimeOffset.UtcNow.AddDays(-1);
                var begin     = new DateTimeOffset(yesterday.Year, yesterday.Month, 1, 0, 0, 0, AppConfig.LocalTimeZone.BaseUtcOffset);
                var end       = begin.AddMonths(1);
                IEnumerable <WeightEntity> monthlyWeights =
                    storageClient.LoadMeasurementData(InnerScanTag.Weight.ToString(), begin, end)
                    .Cast <WeightEntity>();

                Image <int, double> chartImage = MakeMonthlyWeightChart(yesterday.Year, yesterday.Month, monthlyWeights);
                string imageJson = GenerateChartImageJson(chartImage);

                var    plotlyApi = new Plotly.Api(appConfig.PlotlyUserName, appConfig.PlotlyApiKey);
                byte[] image     = await plotlyApi.ImagesAsync(imageJson);

                using (var writer = new System.IO.FileStream("result.png", System.IO.FileMode.Create, System.IO.FileAccess.Write))
                {
                    await writer.WriteAsync(image, 0, image.Length);
                }
            }
            catch (Exception e)
            {
                log.Error($"Exception: {e.ToString()}");
            }
            finally
            {
                log.Info($"Finish MonthlyChartImage at: {DateTime.Now}");
            }
        }
Пример #27
0
        /// <summary>
        /// 
        /// </summary>
        /// <returns></returns>
        public String GetCertifyFile()
        {
            String result = String.Empty;

            // User Data
            String userName = "******";
            String password = "******";

            String id = "1244eaaa-9cbe-434a-a3eb-762fa8be865f";

            // POST Data
            var postData = new
            {
                UserName = userName,
                Password = password,
                Id = id.ToUpper()
            };

            // Xml Data
            var xmlData = String.Format(@"
                <GetCertifyFileRequest xmlns='https://sms.didimo.es/wcf/GetCertifyFileRequest'>
                  <UserName>{0}</UserName>
                  <Password>{1}</Password>
                  <Id>{2}</Id>
                </GetCertifyFileRequest>
            ", postData.UserName, postData.Password, postData.Id);

            byte[] buffer;
            String fileName = String.Format("message_{0}.pdf", id); ;

            try
            {
                // Execute
                buffer = this.ExecuteAndDownload(Helper.RestOperations.GetCertifyFile, xmlData, ref fileName);
            }
            catch (Exception ex)
            {
                return ex.Message;
            }

            String fileDirectory = @"C:\SMSCertifies\sms.didimo\";

            using (System.IO.FileStream fs = new System.IO.FileStream(System.IO.Path.Combine(fileDirectory, fileName), System.IO.FileMode.OpenOrCreate))
            {
                fs.WriteAsync(buffer, 0, buffer.Length).Wait();
            }

            result = String.Format("File saved on {0}", System.IO.Path.Combine(fileDirectory, fileName));

            return result;
        }
Пример #28
0
 public override Task WriteAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken)
 {
     return(InternalFileStream.WriteAsync(buffer, offset, count));
 }
        /// <summary>
        /// 
        /// </summary>
        /// <returns></returns>
        public String GetCertifyFile()
        {
            String result = String.Empty;

            // User Data
            String userName = "******";
            String password = "******";

            String id = "1244eaaa-9cbe-434a-a3eb-762fa8be865f";

            // POST Data
            var postData = new
            {
                user = userName,
                password = password,
                id = id.ToUpper()
            };

            NameValueCollection parameters = new NameValueCollection();
            postData.GetType().GetProperties()
                    .ToList()
                    .ForEach(pi => parameters.Add(pi.Name, pi.GetValue(postData, null).ToString()));

            byte[] buffer;
            String fileName = String.Format("message_{0}.pdf", id); ;

            try
            {
                // Execute
                buffer = this.ExecuteAndDownload(Helper.UrlOperations.GetCertifyFile, parameters, ref fileName);
            }
            catch (Exception ex)
            {
                return ex.Message;
            }

            String fileDirectory = @"C:\SMSCertifies\sms.didimo\";

            using (System.IO.FileStream fs = new System.IO.FileStream(System.IO.Path.Combine(fileDirectory, fileName), System.IO.FileMode.OpenOrCreate))
            {
                fs.WriteAsync(buffer, 0, buffer.Length).Wait();
            }

            result = String.Format("File saved on {0}", System.IO.Path.Combine(fileDirectory, fileName));

            return result;
        }
Пример #30
0
        /// <summary>
        /// 
        /// </summary>
        /// <returns></returns>
        public String GetCertifyFile()
        {
            String result = String.Empty;

            // User Data
            String userName = "******";
            String password = "******";

            String id = "1244eaaa-9cbe-434a-a3eb-762fa8be865f";

            // POST Data
            var postData = new
            {
                UserName = userName,
                Password = password,
                Id = id.ToUpper()
            };

            // Json Data
            var jsonData = JsonConvert.SerializeObject(postData, Formatting.None);

            byte[] buffer;
            String fileName = String.Format("message_{0}.pdf", id); ;

            try
            {
                // Execute
                buffer = this.ExecuteAndDownload(Helper.RestOperations.GetCertifyFile, jsonData, ref fileName);
            }
            catch(Exception ex)
            {
                return ex.Message;
            }

            String fileDirectory = @"C:\SMSCertifies\sms.didimo\";

            using (System.IO.FileStream fs = new System.IO.FileStream(System.IO.Path.Combine(fileDirectory, fileName), System.IO.FileMode.OpenOrCreate))
            {
                fs.WriteAsync(buffer, 0, buffer.Length).Wait();
            }

            result = String.Format("File saved on {0}", System.IO.Path.Combine(fileDirectory, fileName));

            return result;
        }
Пример #31
0
        private void RecordData(RectI faceRegion, FaceFrame faceFrame)
        {
            //record the R, G, B, IR values from the Face Region pixels
            using (var irFrame = faceFrame.InfraredFrameReference.AcquireFrame())
            {
                using (var depthFrame = faceFrame.DepthFrameReference.AcquireFrame())
                {
                    using (var colorFrame = faceFrame.ColorFrameReference.AcquireFrame())
                    {
                        if ((null == irFrame) || (null == colorFrame) || (null == depthFrame))
                        {
                            return;
                        }

                        DepthSpacePoint[] depthSpacePoints = new DepthSpacePoint[colorFrame.FrameDescription.Height * colorFrame.FrameDescription.Width];

                        FrameDescription depthFrameDescription = depthFrame.FrameDescription;

                        // Access the depth frame data directly via LockImageBuffer to avoid making a copy
                        using (KinectBuffer depthFrameData = depthFrame.LockImageBuffer())
                        {
                            this.m_CoordMapper.MapColorFrameToDepthSpaceUsingIntPtr(
                                depthFrameData.UnderlyingBuffer,
                                depthFrameData.Size,
                                depthSpacePoints);
                        }

                        //Get the pixels
                        m_colorBitmap.Lock();
                        unsafe
                        {
                            byte *pixels = (byte *)m_colorBitmap.BackBuffer;

                            var startPixel = faceRegion.Left * faceRegion.Top;
                            var endPixel   = faceRegion.Right * faceRegion.Bottom;

                            float alpha = 0;
                            float red   = 0;
                            float green = 0;
                            float blue  = 0;
                            float ir    = 0;

                            ushort[] irFrameData = new ushort[irFrame.FrameDescription.Height * irFrame.FrameDescription.Width];
                            irFrame.CopyFrameDataToArray(irFrameData);

                            //Now get the Red, Green, Blue Pixels for the region
                            for (int i = startPixel; i < endPixel; i += 4)
                            {
                                //var pixel = pixels[i];
                                int irIndex = (int)depthSpacePoints[i].X * (int)depthSpacePoints[i].Y;

                                blue  += pixels[i];     // << 24;
                                green += pixels[i + 1]; // << 16;
                                red   += pixels[i + 2]; // << 8;
                                alpha += pixels[i + 3];
                                if (irIndex < irFrameData.Length)
                                {
                                    ir += irFrameData[irIndex];
                                }
                                else
                                {
                                    ir += 0;
                                }
                            }
                            float size = Math.Abs(startPixel - endPixel);

                            float avg_alpha = alpha / size;
                            float avg_red   = red / size;
                            float avg_green = green / size;
                            float avg_blue  = blue / size;
                            float avg_ir    = ir / size;

                            double std_alpha = 0;
                            double std_red   = 0;
                            double std_green = 0;
                            double std_blue  = 0;
                            double std_ir    = 0;

                            double var_alpha = 0;
                            double var_red   = 0;
                            double var_green = 0;
                            double var_blue  = 0;
                            double var_ir    = 0;

                            //Now calculate standard deviation
                            for (int i = startPixel; i < endPixel; i += 4)
                            {
                                //var pixel = pixels[i];
                                var_blue  = (double)(pixels[i] - avg_blue);
                                std_blue += Math.Pow(var_blue, 2.0);

                                var_green  = (pixels[i + 1] - avg_green);
                                std_green += Math.Pow(var_green, 2);

                                var_red  = (pixels[i + 2] - avg_red);
                                std_red += Math.Pow(var_red, 2);

                                var_alpha  = (pixels[i + 3] - avg_alpha);
                                std_alpha += Math.Pow(var_alpha, 2);

                                int irIndex = (int)depthSpacePoints[i].X * (int)depthSpacePoints[i].Y;
                                if (irIndex < irFrameData.Length)
                                {
                                    var_ir = irFrameData[irIndex] - avg_ir;
                                }
                                else
                                {
                                    var_ir = avg_ir;
                                }

                                std_ir += Math.Pow(var_ir, 2);
                            }

                            std_alpha = Math.Sqrt(std_alpha / size);
                            std_red   = Math.Sqrt(std_red / size);
                            std_green = Math.Sqrt(std_green / size);
                            std_blue  = Math.Sqrt(std_blue / size);
                            std_ir    = Math.Sqrt(std_ir / size);


                            double prime_alpha = 0;
                            double prime_red   = 0;
                            double prime_green = 0;
                            double prime_blue  = 0;
                            double prime_ir    = 0;

                            //Now calculate standard deviation
                            for (int i = startPixel; i < endPixel; i += 4)
                            {
                                //var pixel = pixels[i];
                                var_blue    = (double)(pixels[i] - avg_blue);
                                prime_blue += var_blue / std_blue;

                                var_green    = (pixels[i + 1] - avg_green);
                                prime_green += var_green / std_green;

                                var_red    = (pixels[i + 2] - avg_red);
                                prime_red += var_red / std_red;

                                var_alpha    = (pixels[i + 3] - avg_alpha);
                                prime_alpha += var_alpha / std_alpha;

                                int irIndex = (int)depthSpacePoints[i].X * (int)depthSpacePoints[i].Y;
                                if (irIndex < irFrameData.Length)
                                {
                                    var_ir = irFrameData[irIndex] - avg_ir;
                                }
                                else
                                {
                                    var_ir = avg_ir;
                                }

                                prime_ir += var_ir / std_ir;
                            }

                            double norm_alpha = prime_alpha / size;
                            double norm_red   = prime_red / size;
                            double norm_blue  = prime_blue / size;
                            double norm_green = prime_green / size;
                            double norm_ir    = prime_ir / size;

                            string data = string.Format("{0},{1},{2},{3},{4},{5}\n", m_secondsElapsed.ElapsedMilliseconds, norm_alpha, norm_red, norm_green, norm_blue, norm_ir);

                            var bytesToWrite = System.Text.Encoding.UTF8.GetBytes(data);
                            m_fileStream.WriteAsync(bytesToWrite, 0, bytesToWrite.Length);
                            //m_fileStream.FlushAsync();
                        }
                        m_colorBitmap.Unlock();
                    }
                }
            }
        }
Пример #32
0
 private async void SaveToFile(string[] fileNames)
 {
     var filename = fileNames.FirstOrDefault();
     if (string.IsNullOrEmpty(filename))
     { return; }
     using (var stream = new System.IO.FileStream(filename, System.IO.FileMode.Create, System.IO.FileAccess.Write))
     {
         var bytes = System.Text.Encoding.UTF8.GetBytes(this.Text);
         await stream.WriteAsync(bytes, 0, bytes.Length).ConfigureAwait(false);
     }
 }
        private static async System.Threading.Tasks.Task <ResultType> TaskMain(Fee.File.OnFileTask_CallBackInterface a_callback_interface, Path a_path, byte[] a_binary, Fee.TaskW.CancelToken a_cancel)
                #endif
        {
            ResultType t_ret;

            {
                t_ret.saveend     = false;
                t_ret.errorstring = null;
            }

            System.IO.FileStream t_filestream = null;

            try{
                //ファイルパス。
                System.IO.FileInfo t_fileinfo = new System.IO.FileInfo(a_path.GetPath());

                //開く。
                t_filestream = t_fileinfo.Create();

                //書き込み。
                if (t_filestream != null)
                {
                    if (a_binary != null)
                    {
                        if (Config.USE_ASYNC == true)
                        {
                                                        #if ((UNITY_5) || (UNITY_WEBGL))
                            Tool.Assert(false);
                                                        #else
                            await t_filestream.WriteAsync(a_binary, 0, a_binary.Length, a_cancel.GetToken());

                            await t_filestream.FlushAsync(a_cancel.GetToken());
                                                        #endif
                        }
                        else
                        {
                            t_filestream.Write(a_binary, 0, a_binary.Length);
                            t_filestream.Flush();
                        }
                        t_ret.saveend = true;
                    }
                    else
                    {
                        t_ret.saveend     = false;
                        t_ret.errorstring = "Task_SaveLocalBinaryFile : binary == null";
                    }
                }
            }catch (System.Exception t_exception) {
                t_ret.saveend     = false;
                t_ret.errorstring = "Task_SaveLocalBinaryFile : " + t_exception.Message;
            }

            //閉じる。
            if (t_filestream != null)
            {
                t_filestream.Close();
            }

            Platform.Platform.GetInstance().SyncFs();

            if (a_cancel.IsCancellationRequested() == true)
            {
                t_ret.saveend     = false;
                t_ret.errorstring = "Task_SaveLocalBinaryFile : Cancel";

                a_cancel.ThrowIfCancellationRequested();
            }

            if (t_ret.saveend == false)
            {
                if (t_ret.errorstring == null)
                {
                    t_ret.errorstring = "Task_SaveLocalBinaryFile : null";
                }
            }

            return(t_ret);
        }