コード例 #1
0
        public void TestReplaceIgnoreMerge()
        {
            var tempLongPathFilename = new StringBuilder(uncDirectory).Append(@"\").Append("filename.ext").ToString();

            using (var fileStream = Pri.LongPath.File.Create(tempLongPathFilename)) {
                try {
                    fileStream.WriteByte(42);
                }
                catch (Exception) {
                    Pri.LongPath.File.Delete(tempLongPathFilename);

                    throw;
                }
            }

            var tempLongPathFilename2 = new StringBuilder(uncDirectory).Append(@"\").Append("filename2.ext").ToString();

            using (var fileStream = Pri.LongPath.File.Create(tempLongPathFilename2)) {
                try {
                    fileStream.WriteByte(52);
                }
                catch (Exception) {
                    Pri.LongPath.File.Delete(tempLongPathFilename2);

                    throw;
                }
            }

            var fi = new FileInfo(tempLongPathFilename);

            try {
                const Boolean ignoreMetadataErrors = true;
                var           fi2 = fi.Replace(tempLongPathFilename2, null, ignoreMetadataErrors);
                Assert.IsNotNull(fi2);
                Assert.AreEqual(tempLongPathFilename2, fi2.FullName);

                using (var fileStream = Pri.LongPath.File.OpenRead(tempLongPathFilename2)) {
                    Assert.AreEqual(42, fileStream.ReadByte());
                }

                Assert.IsFalse(Pri.LongPath.File.Exists(tempLongPathFilename));
            }
            finally {
                if (Pri.LongPath.File.Exists(tempLongPathFilename))
                {
                    Pri.LongPath.File.Delete(tempLongPathFilename);
                }

                Pri.LongPath.File.Delete(tempLongPathFilename2);
            }
        }
コード例 #2
0
        public void TestReplace()
        {
            var tempLongPathFilename = new StringBuilder(longPathDirectory).Append(@"\").Append("filename.ext").ToString();

            using (var fileStream = File.Create(tempLongPathFilename)) {
                try {
                    fileStream.WriteByte(42);
                }
                catch (Exception) {
                    File.Delete(tempLongPathFilename);

                    throw;
                }
            }

            var tempLongPathFilename2 = new StringBuilder(longPathDirectory).Append(@"\").Append("filename2.ext").ToString();

            using (var fileStream = File.Create(tempLongPathFilename2)) {
                try {
                    fileStream.WriteByte(52);
                }
                catch (Exception) {
                    File.Delete(tempLongPathFilename2);

                    throw;
                }
            }

            var fi = new FileInfo(tempLongPathFilename);

            try {
                var fi2 = fi.Replace(tempLongPathFilename2, null);
                Assert.IsNotNull(fi2);
                Assert.AreEqual(tempLongPathFilename2, fi2.FullName);

                using (var fileStream = File.OpenRead(tempLongPathFilename2)) {
                    Assert.AreEqual(42, fileStream.ReadByte());
                }

                Assert.IsFalse(File.Exists(tempLongPathFilename));
            }
            finally {
                if (File.Exists(tempLongPathFilename))
                {
                    File.Delete(tempLongPathFilename);
                }

                File.Delete(tempLongPathFilename2);
            }
        }