1

(2 відповідей, залишених у C#, .NET)

koala написав:

Це не той розділ, вам в .NET.
Ось вам ваш ReadAllLines на C++.
Щодо останнього - пошукайте в подіях потрібну.

Велике дякую!) Зробив , все працює, зараз ще буду розбиратися з подіями)

2

(2 відповідей, залишених у C#, .NET)

Мені потрібно прочитати даі з файлу і помістити їх у listBox.
Записую в файл ось так :

Прихований текст
private: System::Void зберегтиФайлБібліотекиToolStripMenuItem_Click(System::Object^  sender, System::EventArgs^  e) {
             SaveFileDialog^ File = gcnew SaveFileDialog;
             File -> InitialDirectory = "c:\\";
             File -> Filter = "Library  Files (*.lbr)|*.lbr";
             File -> FilterIndex = 2;
             File -> RestoreDirectory = true;
             File->ShowDialog();
             StreamWriter^ file = gcnew StreamWriter(File->FileName);
             
             for(int i=0; i<listBox1->Items->Count;i++) {
                 file->WriteLine( listBox1->Items[i] );}
             
             file->WriteLine();
             file->Close();
         }


Намагався добавити ось так , але тут і так зрозуміло що неспівпадіння типів.
Як порядково додати елементи не знаю, знайшов що у С# функція ReadAllLines, а у с ++, - нічого не знайшов.

Прихований текст
Stream^ fileStream;
             OpenFileDialog^ openFileDialog1 = gcnew OpenFileDialog;
    
                openFileDialog1 -> InitialDirectory = "c:\\";
                openFileDialog1 -> Filter = "Library  Files (*.lbr)|*.lbr";
                openFileDialog1 -> FilterIndex = 2;
                 openFileDialog1 -> RestoreDirectory = true;
                 
                if (openFileDialog1 -> ShowDialog() == System::Windows::Forms::DialogResult::OK) {
                if ((fileStream = openFileDialog1 -> OpenFile()) != nullptr) { 
                StreamReader^ streamReader = gcnew StreamReader(openFileDialog1 -> FileName);
                listBox1->Items->AddRange(fileStream);
                }; };

І ще одне питання , чи можливо якось описувати Items, щоб наприклад при нажатті на якийсь ітем відкривався відповідний файл , чи вікно з якоюсь інформацією.
Ну ось наприклад , якщо нажати на якись з цих елементів.

Прихований текст

http://screenshot.su/img/a0/e1/cf/a0e1cff6780a2f110a5631bb6655fc7d.jpg

3

(4 відповідей, залишених у C++)

truesupport написав:

а у вас тип проекту с++ clr ? просто cool reader на qt написаний, це дуже різні технології.

Я працюю з Windows Aplication Form.

http://screenshot.su/img/ee/e2/f6/eee2f6c54c954037d19f4040d2f75e90.jpg

Уже э досить великий результат залишилось лище доробити пару функці :
1) аналіз імені і розширення фалу
2) Бібліотеку з властивостями книг
3)Закладки і швидкий перхід
4)Та розбиття на сторінки.
Зараз працюю над робиттям файлом, прогрес невеликий, спитав викладача , сказав що має бути властивість
richTextBox - ставити мітки у тексті і переходити по ним тим самим гортаючи текст, це можливо?

4

(4 відповідей, залишених у C++)

Bartash написав:

В інеті є сирці CoolReader - одного з популярних рідерів - як приклад.

знайшов , скачав , але там я нічооого не зрозумів, лише якісь CSS файли ...

5

(4 відповідей, залишених у C++)

Є якась можливість розбити текст на сторінки і перегортати за допомогою кнопки?

Пишу рідер , зробив мало... пока що ось така картина
http://screenshot.su/show.php?img=b2b28 … 0ce9a0.jpg

працюють відкриття файлу і функція блокування редагування.

Буду радий цікавам порадам.

6

(7 відповідей, залишених у C++)

Написав як було запропоновано

ShellExecute(Handle, "open", "\"c:\\File1.txt\"", NULL, NULL, SW_SHOWNORMAL);

але при компіляції  кидає помилку  http://screenshot.su/show.php?img=256b7 … 149e14.jpg

Почитав декілька статтей виникло питання, чи можна задавати файл для відкриття  через діалогове вікно, щоб користувачи вибирав файл, як в Openfiledialog.

// Знайшов назву функції але про неї майже нічого можливо не те ле все ж таки - FindExecutable

7

(7 відповідей, залишених у C++)

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
                 // Stream^ myStream;
                 System::IO::Stream ^ myStream;
      OpenFileDialog^ openFileDialog1 = gcnew OpenFileDialog;
      

     
      openFileDialog1->InitialDirectory = "c:\\";
      openFileDialog1->Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
      openFileDialog1->FilterIndex = 2;
      openFileDialog1->RestoreDirectory = true;
     // openFileDialog1->ShowDialog();
    
      if ( openFileDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK )
      {
         if ( (myStream = openFileDialog1->OpenFile()) != nullptr )
         {
              system("c:\\WinDjView.exe c:\\pascal.djvu");
            
            myStream->Close();
         };
      
      };
             }    ;
     
             };

Ось що я накидав , результат якийсь є , але не зовсім те .
Мене цікавить чи можна , при зчитуванні файлу через openFileDialog1 якось визначити його тип . І щоб приблизно кінцевий результат був:

 if ( somefile == ".djvu") system(" c:\\WinDjView.exe somefile");

Тобто читало файл через penFileDialog1 перевіряло його тип , якщо тип співпадає з якоюсь з умов, відкривало його у відповідній програмі.

Так як я зрозумів команда system працює як командна строка, і опрацьовувати з нею файлові зміні чи потоки не вийде. ( у напрямку якому я запитую)
(P.S:Уявлення є , а як реалізувати в коді , толком не знаю , вже кілька годин цікавість розриває , шастаю по форумах і шукаю інформацію)

8

(7 відповідей, залишених у C++)

Доброго для ,  пишу курсову по С++ ось виникла невеличка проблема) Потрібно прочитати розширення бінарного файлу і відповідно до розширення відкривало файл у відповідній програмі. Можливо підскажите якусь літературу , чи алгоритм , буду вдячний =)

9

(6 відповідей, залишених у Pascal/Delphi)

За підсказку по масивам дякую, їх вже хробив, а на рахунок коду по черзі,  приблизний код я накидав по прикладам в інтернеті , мало що зрозумів з того + код навіть не компілюється. Так як код навіть не компілюється , тому і не скинув у тему.

Буду вдячний хоча б за якийсь приклад черги. (так як знайдені в інтернеті , просто на Паскалі  і реалізувати у візуальному середовищі з едітами чи странгрідом я не зміг)

Вибачте за нахабність) Просто я не так  пояснив прохання )

10

(6 відповідей, залишених у Pascal/Delphi)

Перший раз прошу допомоги на форумі, надіюсь на вашу допомогу)

Отримав завдання по динамічним структурам , але не сильно розумію як реалізувати щось по ним у коді , на Делфі.

Є 3 задачки, 1 - черга, 2,3- динамічні масиви.

Буду вдячний за код  хоча б якоїсь з програм , хоча б з якимось поясненням .

1)Створити чергу з цілих випадкових чисел, вивести на екран значення і порядковий номер чисел, які діляться на 10 без залишку.

2) Скласти програму формування динамічного масиву A з  N випадкових чисел, зробити можливим його редагування, обчислити суму елементів масиву і встановити її у кінець масиву.

3) Скласти програму формування динамічної квадратної матриці А n-го порядку (n рядків і n стовпців) випадковими числами, зробити можливим її редагування. Обчислити кількість непарних елементів на головній діагоналі матриці.