1

Тема: підкажіть, як на C# змінити тип файлу *rpy на *txt

Привіт.
Я користуюсь інженерно-технічною програмою, яка свої вихідні макроси будує у вигляді скрипта для Python з розширенням файлу *rpy.
Маю нагальну потребу у швидкому переналаштуванні того чи іншого макроса (робочого проекту), для цього планую програмно в С# перейменувати файл з розширенням *rpy в текстовий формат *txt при цьому зберегти внутрішню форму файлу аби потім після його редагування повернути до розширення *rpy, з метою використання в основній програмі.
Інтуітивно мені здається треба використати метод File.Move яким я ще не разу не користувався.
Підкажіть будь-ласка інформаційний ресурс, де є вирішення подібної проблеми чи можливо хтось уже з таким стикався і може поділитися кодом. Особливо буду вдячний якщо хтось знає метод в С#, яким можна відразу вносити зміни в скрипт Python тобто в файл з розширенням *rpy.
На офіційному ресурсі керівництва користувача Visual Studio наведені приклади перейменування однотипних файлів, а саме *txt в *txt ось головний рядок коду даного методу:

File.Move(@"C:\ff\MyTest.txt", @"C:\ff\0.txt");

тоді питання слідуючого характери чи варто цю справу провернути таким написанням коду

File.Move(@"C:\ff\MacrosA.rpy", @"C:\ff\0.txt");

Вибачте, якщо потурбував Вас дурним питанням.

2 Востаннє редагувалося Betterthanyou (01.12.2016 12:50:52)

Re: підкажіть, як на C# змінити тип файлу *rpy на *txt

Я нічого не зрозумів, навіщо перейменовувати файл для його редагування ? Якщо він текстовий то чого б його не відкрити через "блокнот" (чи іншу програму для текстових файлів) і відредагувати.

Leo_Zt написав:

Особливо буду вдячний якщо хтось знає метод в С#, яким можна відразу вносити зміни в скрипт Python тобто в файл з розширенням *rpy.

Ну так це звичайне відкриття файлу, читання і запис, хіба ні ?

Подякували: FakiNyan1

3

Re: підкажіть, як на C# змінити тип файлу *rpy на *txt

Це має бути програмка яка дозволить прочитати конкретний файл типу *.rpy, програмно, а не завдяки блокноту внесе до цього файлу зміни, а потім знову створить файл цього ж типу.
Чого я спочатку схватився за переведення основного файлу в *.txt, бо на нього є багато прикладів, а от чи зможе C# розкрити файл типу *.rpy я не знаю й досі тому й почав шукати відповіді на свої запитання.
З повагою, Leo_Zt.

4

Re: підкажіть, як на C# змінити тип файлу *rpy на *txt

Доречі сьогодні перевірив метод File.Move він таки працює й переіміновує файл в *.txt

;-)

5

Re: підкажіть, як на C# змінити тип файлу *rpy на *txt

Розширення ніяк не впливає на зміст файлу.

Подякували: Betterthanyou1

6

Re: підкажіть, як на C# змінити тип файлу *rpy на *txt

Подивіться чи ця програма буде відкривати ваш файл
Я трохи нуб в С# тому краще зробіть попереднє збереження того файлу що будете ви відкривати
код

7

Re: підкажіть, як на C# змінити тип файлу *rpy на *txt

Дякую Betterthanyou Ваш модуль працює чудово, а не могли б Ви поділитися його кодом?

8

Re: підкажіть, як на C# змінити тип файлу *rpy на *txt

Leo_Zt написав:

Дякую Betterthanyou Ваш модуль працює чудово, а не могли б Ви поділитися його кодом?

Так я поділився, я цілий проект на github скинув !!! Дивіться там де пише код в попередньому повідомленні !!!

ще сюди закину
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.IO;
using System.Windows.Forms;

namespace Editor
{
    public partial class Form1 : Form
    {

        public string currentPath;

        public Form1()
        {
            InitializeComponent();
        }

        private void review_Click_1(object sender, EventArgs e)
        {
            richTextBox1.Clear();
            OpenFileDialog OPF1 = new OpenFileDialog();
            OPF1.ShowDialog();
            currentPath = OPF1.FileName;

            if (!File.Exists(currentPath))
                return;

            path.Text = currentPath;

            using (FileStream fs = File.Open(currentPath, FileMode.Open, FileAccess.Read))
            {
                byte[] b = new byte[1024];
                UTF8Encoding temp = new UTF8Encoding(true);

                while (fs.Read(b, 0, b.Length) > 0)
                {
                    richTextBox1.Text += temp.GetString(b);
                }
            }
        }

        private void save_Click(object sender, EventArgs e)
        {
            if (currentPath == null || currentPath == "")
                return;

            using (FileStream fs = File.Open(currentPath, FileMode.Create, FileAccess.Write, FileShare.None))
            {
                Byte[] info = new UTF8Encoding(true).GetBytes( richTextBox1.Text );
                fs.Write(info, 0, info.Length);
            }
        }

        private void cancel_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}

9

Re: підкажіть, як на C# змінити тип файлу *rpy на *txt

Ще раз дякую.