Q-dir: отзывы

Чтение содержимого файлов

Для того, чтобы прочитать содержимое файла, мы должны сначала открыть этот файл в режиме чтения, затем создать входящий файловый поток, из которого мы будем считывать данные. В примере ниже мы считываем данные из файла . Файл содержит названия семи цветов, вот его содержимое:

А теперь сама программа:

#include <QTextStream>
#include <QFile>

int main() {

QTextStream out(stdout);

// Создаем объект
QFile file(«C:\\colours.txt»);

// С помощью метода open() открываем файл в режиме чтения
if (!file.open(QIODevice::ReadOnly)) {
qWarning(«Cannot open file for reading»); // если файл не найден, то выводим предупреждение и завершаем выполнение программы
return 1;
}

// Создаем входящий поток, из которого будут считываться данные, и связываем его с нашим файлом
QTextStream in(&file);

// Считываем файл строка за строкой
while (!in.atEnd()) { // метод atEnd() возвращает true, если в потоке больше нет данных для чтения
QString line = in.readLine(); // метод readLine() считывает одну строку из потока
out << line << endl;
}

// Закрываем файл
file.close();
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28

#include <QTextStream>
#include <QFile>
 

intmain(){

QTextStream out(stdout);

// Создаем объект

QFile file(«C:\\colours.txt»);

// С помощью метода open() открываем файл в режиме чтения

if(!file.open(QIODevice::ReadOnly)){

qWarning(«Cannot open file for reading»);// если файл не найден, то выводим предупреждение и завершаем выполнение программы

return1;

}

// Создаем входящий поток, из которого будут считываться данные, и связываем его с нашим файлом

QTextStream in(&file);

// Считываем файл строка за строкой

while(!in.atEnd()){// метод atEnd() возвращает true, если в потоке больше нет данных для чтения

QString line=in.readLine();// метод readLine() считывает одну строку из потока

out<<line<<endl;

}

// Закрываем файл

file.close();

}

Результат выполнения программы:

Размер файла

Для определения размера файла в классе QFileInfo предусмотрен метод size():

#include <QTextStream>
#include <QFileInfo>

int main(int argc, char *argv[]) {

QTextStream out(stdout);

if (argc != 2) {

qWarning(«Usage: file_size file»);
return 1;
}

// Имя файла передается в качестве аргумента в нашу программу
QString filename = argv;

// Проверяем существование файла
if (!QFile(filename).exists()) {
qWarning(«The file does not exist»); // если файл не найден, то выводим предупреждение и завершаем работу программы
return 1;
}

// Создаем объект
QFileInfo fileinfo(filename);

// Определяем размер файла с помощью метода size()
qint64 size = fileinfo.size(); // qint64 — это тип данных, который гарантированно будет 64-битным на всех платформах, поддерживаемых Qt

// Выводим результат
QString str = «The size is: %1 bytes»;
out << str.arg(size) << endl;
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32

#include <QTextStream>
#include <QFileInfo>
 

intmain(intargc,char*argv){

QTextStream out(stdout);

if(argc!=2){

qWarning(«Usage: file_size file»);

return1;

}

// Имя файла передается в качестве аргумента в нашу программу

QString filename=argv1;

// Проверяем существование файла

if(!QFile(filename).exists()){

qWarning(«The file does not exist»);// если файл не найден, то выводим предупреждение и завершаем работу программы

return1;

}

// Создаем объект

QFileInfo fileinfo(filename);

// Определяем размер файла с помощью метода size()

qint64 size=fileinfo.size();// qint64 — это тип данных, который гарантированно будет 64-битным на всех платформах, поддерживаемых Qt

// Выводим результат

QString str=»The size is: %1 bytes»;

out<<str.arg(size)<<endl;

}

Для запуска программы проделайте следующие шаги:

ПОДГОТОВКА:

   Шаг №1: Скомпилируйте вашу программу. Для этого выберете в меню (или нажмите ).

   Шаг №2: Зайдите в папку, где лежит ваш Qt-проект (у меня он расположен в ).

   Шаг №3: После выполнения первого шага у вас должна появиться еще одна папка, в которой будет создан исполняемый файл программы. Т.к. я использую компилятор MinGW 32-bit и режим компиляции Debug, то при компиляции проекта, Qt автоматически создал папку .

   Шаг №4: Зайдите в папку (она находится внутри папки из шага №3).

   Шаг №5: Найдите *.exe-файл вашей программы (у меня это ).

   Шаг №6: Cкопируйте этот файл в папку к соответствующему компилятору (напомню, т.к. я использовал компилятор MinGW 32-bit, то у меня этот путь выглядит следующим образом — ).

ЗАПУСК ПРОГРАММЫ:

   Шаг №7: Откройте командную строку.

   Шаг №8: Перейдите в папку из шага №6 ().

   Шаг №9: Запустите свою программу, передав ей в качестве параметра имя любого файла (у меня этим файлом оказалась эта же программа, поэтому в моем случае команда была следующей — ).

   Баста!

Результат:

Detailed Description

A QDir is used to manipulate path names, access information
regarding paths and files, and manipulate the underlying file
system.

A QDir can point to a file using either a relative or an absolute
path. Absolute paths begin with the directory separator «/»
(optionally preceded by a drive specification under Windows). If
you always use «/» as a directory separator, Qt will translate
your paths to conform to the underlying operating system. Relative
file names begin with a directory name or a file name and specify
a path relative to the current directory.

The «current» path refers to the application’s working directory.
A QDir’s own path is set and retrieved with () and ().

An example of an absolute path is the string «/tmp/quartz», a
relative path might look like «src/fatlib». You can use the
function () to check if a QDir is using a relative or an
absolute file path. Call () to convert a relative QDir
to an absolute one. For a simplified path use (). To
obtain a path which has no symbolic links or redundant «..»
elements use (). The path can be set with setPath(),
and changed with () and ().

QDir provides several static functions, for example, ()
to set the application’s working directory and () to
retrieve the application’s working directory. Access to some
common paths is provided with the static functions, (),
() and () which return QDir objects or currentDirPath(),
() and () which return the path as a string.
If you want to know about your application’s path use
().

The number of entries in a directory is returned by ().
Obtain a string list of the names of all the files and directories
in a directory with (). If you prefer a list of QFileInfo
pointers use (). Both these functions can apply a
name filter, an attributes filter (e.g. read-only, files not
directories, etc.), and a sort order. The filters and sort may be
set with calls to (), () and ().
They may also be specified in the entryList() and
entryInfoList()’s arguments.

Create a new directory with (), rename a directory with
() and remove an existing directory with (). Remove a
file with (). You can interrogate a directory with (),
() and ().

To get a path with a filename use (), and to get a
directory name use (); neither of these functions checks
for the existence of the file or directory.

The list of root directories is provided by (); on Unix
systems this returns a list containing one root directory, «/»; on
Windows the list will usually contain «C:/», and possibly «D:/»,
etc.

It is easiest to work with «/» separators in Qt code. If you need
to present a path to the user or need a path in a form suitable
for a function in the underlying operating system use
().

Examples:

See if a directory exists.

    QDir d( "example" );                        // "./example"
    if ( !d.() )
        ( "Cannot find the example directory" );
    

Traversing directories and reading a file.

    QDir d = QDir::();                      // "/"
    if ( !d.("tmp") ) {                       // "/tmp"
        ( "Cannot find the \"/tmp\" directory" );
    } else {
        QFile f( d.("ex1.txt") );       // "/tmp/ex1.txt"
        if ( !f.(IO_ReadWrite) )
            ( "Cannot create the file %s", f.() );
    }
    

A program that lists all the files in the current directory
(excluding symbolic links), sorted by size, smallest first:

    #include <stdio.h>
    #include <qdir.h>

    int main( int argc, char **argv )
    {
        QDir d;
        d.( QDir:: | QDir:: | QDir:: );
        d.( QDir:: | QDir:: );

        const QFileInfoList *list = d.();
        QFileInfoListIterator it( *list );
        QFileInfo *fi;

        printf( "     Bytes Filename\n" );
        while ( (fi = it.current()) != 0 ) {
            printf( "%10li %s\n", fi->(), fi->().latin1() );
            ++it;
        }
        return 0;
    }
    

See also () and Input/Output and Networking.

Public Functions

virtual
QFileInfo
QString
QString
bool
QString
QString

Detailed Description

The QDirIterator class provides an iterator for directory entrylists.

You can use QDirIterator to navigate entries of a directory one at a time. It is similar to () and (), but because it lists entries one at a time instead of all at once, it scales better and is more suitable for large directories. It also supports listing directory contents recursively, and following symbolic links. Unlike (), QDirIterator does not support sorting.

The QDirIterator constructor takes a or a directory as argument. After construction, the iterator is located before the first directory entry. Here’s how to iterate over all the entries sequentially:

 it("/etc", ::Subdirectories);
while (it.hasNext()) {
    () << it.next();

    
    
    
    
    
}

The () function returns the path to the next directory entry and advances the iterator. You can also call () to get the current file path without advancing the iterator. The () function returns only the name of the file, similar to how () works. You can also call () to get a QFileInfo for the current entry.

Unlike Qt’s container iterators, QDirIterator is uni-directional (i.e., you cannot iterate directories in reverse order) and does not allow random access.

QDirIterator works with all supported file engines, and is implemented using QAbstractFileEngineIterator.

See also , (), and QAbstractFileEngineIterator.

enum QDirIterator::IteratorFlagflags QDirIterator::IteratorFlags

This enum describes flags that you can combine to configure the behavior of QDirIterator.

Constant Value Description
The default value, representing no flags. The iterator will return entries for the assigned path.
List entries inside all subdirectories as well.
When combined with Subdirectories, this flag enables iterating through all subdirectories of the assigned path, following all symbolic links. Symbolic link loops (e.g., «link» => «.» or «link» => «..») are automatically detected and ignored.

The IteratorFlags type is a typedef for QFlags<IteratorFlag>. It stores an OR combination of IteratorFlag values.

Member Function Documentation

QDirIterator::QDirIterator(const QDir & dir, flags = NoIteratorFlags)

Constructs a QDirIterator that can iterate over dir‘s entrylist, using dir‘s name filters and regular filters. You can pass options via flags to decide how the directory should be iterated.

By default, flags is , which provides the same behavior as in ().

The sorting in dir is ignored.

Note: To list symlinks that point to non existing files, must be passed to the flags.

See also (), (), and .

QDirIterator::QDirIterator(const QString & path, flags = NoIteratorFlags)

Constructs a QDirIterator that can iterate over path. You can pass options via flags to decide how the directory should be iterated.

By default, flags is , which provides the same behavior as in ().

Note: To list symlinks that point to non existing files, must be passed to the flags.

See also (), (), and .

QDirIterator::QDirIterator(const QString & path, filters, flags = NoIteratorFlags)

Constructs a QDirIterator that can iterate over path, with no name filtering and filters for entry filtering. You can pass options via flags to decide how the directory should be iterated.

By default, filters is , and flags is , which provides the same behavior as in ().

Note: To list symlinks that point to non existing files, must be passed to the flags.

See also (), (), and .

QDirIterator::QDirIterator(const QString & path, const QStringList & nameFilters, filters = QDir::NoFilter, flags = NoIteratorFlags)

Constructs a QDirIterator that can iterate over path, using nameFilters and filters. You can pass options via flags to decide how the directory should be iterated.

By default, flags is , which provides the same behavior as ().

Note: To list symlinks that point to non existing files, must be passed to the flags.

See also (), (), and .

Returns a QFileInfo for the current directory entry.

See also () and ().

QString QDirIterator::fileName() const

Returns the file name for the current directory entry, without the path prepended.

This function is convenient when iterating a single directory. When using the flag, you can use () to get the full path.

See also () and ().

Returns the full file path for the current directory entry.

See also () and ().

bool QDirIterator::hasNext() const

Returns true if there is at least one more entry in the directory; otherwise, false is returned.

See also (), (), (), and ().

QString QDirIterator::next()

Advances the iterator to the next entry, and returns the file path of this new entry. If () returns false, this function does nothing, and returns a null .

You can call () or () to get the current entry file name or path, or () to get a QFileInfo for the current entry.

See also (), (), (), and ().

Detailed Description

QFile is an I/O device for reading and writing text and binary files and resources. A QFile may be used by itself or, more conveniently, with a QTextStream or QDataStream.

The file name is usually passed in the constructor, but it can be set at any time using (). QFile expects the file separator to be ‘/’ regardless of operating system. The use of other separators (e.g., ‘\’) is not supported.

You can check for a file’s existence using (), and remove a file using (). (More advanced file system related operations are provided by QFileInfo and QDir.)

The file is opened with (), closed with (), and flushed with (). Data is usually read and written using QDataStream or QTextStream, but you can also call the QIODevice-inherited functions (), (), (), (). QFile also inherits (), (), and (), which work one character at a time.

The size of the file is returned by (). You can get the current file position using (), or move to a new file position using (). If you’ve reached the end of the file, () returns .

Reading Files Directly

The following example reads a text file line by line:

     file("in.txt");
    if (!file.open(::ReadOnly | ::Text))
        return;

    while (!file.atEnd()) {
        QByteArray line = file.readLine();
        process_line(line);
    }

The flag passed to () tells Qt to convert Windows-style line terminators («\r\n») into C++-style terminators («\n»). By default, QFile assumes binary, i.e. it doesn’t perform any conversion on the bytes stored in the file.

Using Streams to Read Files

The next example uses QTextStream to read a text file line by line:

     file("in.txt");
    if (!file.open(::ReadOnly | ::Text))
        return;

    QTextStream in(&file);
    while (!in.atEnd()) {
        QString line = in.readLine();
        process_line(line);
    }

QTextStream takes care of converting the 8-bit data stored on disk into a 16-bit Unicode QString. By default, it assumes that the user system’s local 8-bit encoding is used (e.g., UTF-8 on most unix based operating systems; see () for details). This can be changed using ().

To write text, we can use operator<<(), which is overloaded to take a QTextStream on the left and various data types (including QString) on the right:

     file("out.txt");
    if (!file.open(::WriteOnly | ::Text))
        return;

    QTextStream out(&file);
    out << "The magic number is: " << 49 << "\n";

QDataStream is similar, in that you can use operator<<() to write data and operator>>() to read it back. See the class documentation for details.

When you use QFile, QFileInfo, and QDir to access the file system with Qt, you can use Unicode file names. On Unix, these file names are converted to an 8-bit encoding. If you want to use standard C++ APIs ( or ) or platform-specific APIs to access files instead of QFile, you can use the () and () functions to convert between Unicode file names and 8-bit file names.

On Unix, there are some special system files (e.g. in ) for which () will always return 0, yet you may still be able to read more data from such a file; the data is generated in direct response to you calling (). In this case, however, you cannot use () to determine if there is more data to read (since () will return true for a file that claims to have size 0). Instead, you should either call (), or call () or () repeatedly until no more data can be read. The next example uses QTextStream to read line by line:

     file("/proc/modules");
    if (!file.open(::ReadOnly | ::Text))
        return;

    QTextStream in(&file);
    QString line = in.readLine();
    while (!line.isNull()) {
        process_line(line);
        line = in.readLine();
    }

Signals

Unlike other QIODevice implementations, such as QTcpSocket, QFile does not emit the (), (), or () signals. This implementation detail means that QFile is not suitable for reading and writing certain types of files, such as device files on Unix platforms.

Platform Specific Issues

File permissions are handled differently on Unix-like systems and Windows. In a non directory on Unix-like systems, files cannot be created. This is not always the case on Windows, where, for instance, the ‘My Documents’ directory usually is not writable, but it is still possible to create files in it.

Property Documentation

lazyChildCount : bool

This property holds whether the directory model optimizes the function to only check if the item is a directory.

If this property is set to false, the directory model will make sure that a directory actually containes any files before reporting that it has children. Otherwise the directory model will report that an item has children if the item is a directory.

This property is by default

Access functions:

bool
void

readOnly : bool

This property holds whether the directory model allows writing to the file system

If this property is set to false, the directory model will allow renaming, copying and deleting of files and directories.

This property is by default

Access functions:

bool
void

resolveSymlinks : bool

This property holds whether the directory model should resolve symbolic links

This is only relevant on operating systems that support symbolic links.

Access functions:

Время последнего чтения/изменения файла

Файлы хранят информацию о последнем времени их чтения/изменения. Чтобы получить эту информацию, мы будем использовать класс QFileInfo. В следующем примере мы выводим время последнего чтения и последнего изменения указанного файла:

#include <QTextStream>
#include <QFileInfo>
#include <QDateTime>
#include <conio.h>

int main(int argc, char *argv[]) {

QTextStream out(stdout);
out.setCodec(«cp-866»);

if (argc != 2) {
qWarning(«Usage: file_times file»);
return 1;
}

QString filename = argv;

// Создаем объект класса QFileInfo. В качестве параметра используем имя файла из аргумента командной строки
QFileInfo fileinfo(filename);

// Определяем дату и время последнего чтения файла
QDateTime last_rea = fileinfo.lastRead();

// Определяем дату и время последнего изменения файла
QDateTime last_mod = fileinfo.lastModified();

out << «Last read: » << last_rea.toString() << endl;
out << «Last modified: » << last_mod.toString() << endl;
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

#include <QTextStream>
#include <QFileInfo>
#include <QDateTime>
#include <conio.h>
 

intmain(intargc,char*argv){

QTextStream out(stdout);

out.setCodec(«cp-866»);

if(argc!=2){

qWarning(«Usage: file_times file»);

return1;

}

QString filename=argv1;

// Создаем объект класса QFileInfo. В качестве параметра используем имя файла из аргумента командной строки

QFileInfo fileinfo(filename);

// Определяем дату и время последнего чтения файла

QDateTime last_rea=fileinfo.lastRead();

// Определяем дату и время последнего изменения файла

QDateTime last_mod=fileinfo.lastModified();

out<<«Last read: «<<last_rea.toString()<<endl;

out<<«Last modified: «<<last_mod.toString()<<endl;

}

Примечание: Для запуска программы см. пункт «Размер файла» (Подготовка и Запуск программы).

Результат выполнения программы:

Member Function Documentation

QDirIterator::QDirIterator(const QString &path, const QStringList &nameFilters, filters = QDir::NoFilter, flags = NoIteratorFlags)

Constructs a QDirIterator that can iterate over path, using nameFilters and filters. You can pass options via flags to decide how the directory should be iterated.

By default, flags is , which provides the same behavior as ().

Note: To list symlinks that point to non existing files, must be passed to the flags.

See also (), (), and .

QDirIterator::QDirIterator(const QString &path, filters, flags = NoIteratorFlags)

Constructs a QDirIterator that can iterate over path, with no name filtering and filters for entry filtering. You can pass options via flags to decide how the directory should be iterated.

By default, filters is , and flags is , which provides the same behavior as in ().

Note: To list symlinks that point to non existing files, must be passed to the flags.

See also (), (), and .

QDirIterator::QDirIterator(const QString &path, flags = NoIteratorFlags)

Constructs a QDirIterator that can iterate over path. You can pass options via flags to decide how the directory should be iterated.

By default, flags is , which provides the same behavior as in ().

Note: To list symlinks that point to non existing files, must be passed to the flags.

See also (), (), and .

QDirIterator::QDirIterator(const QDir &dir, flags = NoIteratorFlags)

Constructs a QDirIterator that can iterate over dir‘s entrylist, using dir‘s name filters and regular filters. You can pass options via flags to decide how the directory should be iterated.

By default, flags is , which provides the same behavior as in ().

The sorting in dir is ignored.

Note: To list symlinks that point to non existing files, must be passed to the flags.

See also (), (), and .

Returns a QFileInfo for the current directory entry.

See also () and ().

QString QDirIterator::fileName() const

Returns the file name for the current directory entry, without the path prepended.

This function is convenient when iterating a single directory. When using the flag, you can use () to get the full path.

See also () and ().

Returns the full file path for the current directory entry.

See also () and ().

Returns if there is at least one more entry in the directory; otherwise, false is returned.

See also (), (), (), and ().

QString QDirIterator::next()

Advances the iterator to the next entry, and returns the file path of this new entry. If () returns , this function does nothing, and returns an empty QString.

You can call () or () to get the current entry file name or path, or () to get a QFileInfo for the current entry.

See also (), (), (), and ().

Detailed Description

The usage of QDirModel is not recommended anymore. The QFileSystemModel class is a more performant alternative.

This class provides access to the local filesystem, providing functions for renaming and removing files and directories, and for creating new directories. In the simplest case, it can be used with a suitable display widget as part of a browser or filer.

QDirModel keeps a cache with file information. The cache needs to be updated with ().

QDirModel can be accessed using the standard interface provided by QAbstractItemModel, but it also provides some convenience functions that are specific to a directory model. The () and () functions provide information about the underlying files and directories related to items in the model.

Directories can be created and removed using (), (), and the model will be automatically updated to take the changes into account.

Файловый менеджер — Q-Dir 8.95 + Portable

Файловый менеджер с оригинальным четырехпанельным интерфейсом и широкими возможностями по работе с файлами. Работает с любого съемного устройства. Многоязычный интерфейс.Q-Dir позволяет получать быстрый доступ к часто используемым папкам с помощью ссылок «Quick-Link»s», поддерживает функцию drag&drop, работает с буфером обмена, поддерживает следующие типы папок: ZIP, FTP, сетевые, системные, ярлыки. Позволяет просматривать изображения, имеет встроенную «лупу». Может выделять в проводнике цветом различные типы файлов, фильтровать файлы и многое другое. Возможность экспорта в XLS, CSV, TXT, HTML. Имеет специальный режим предварительного просмотра файлов.Системные требования:·Windows Servers 2000-2016Windows XP — Windows 10 (x64 / x86)Торрент Файловый менеджер — Q-Dir 8.95 + Portable подробно:Возможности программы:·Быстрый и легкий доступ к жестким дискам/сетевым дискам/USB-флешкам/дискетам·Функция «лупа»·Поддержка Drag & Drop·12 видов панелей (четыре панели/две/одна в разных видах)·Поддержка вкладок·Быстрый доступ к часто-используемым папкам·Настройка любым цветом определенного расширения файла·Поддержка Zip, FTP·Настройка ассоциаций под любое расширение файла·Поддержка экспорта в CSV, XLS, HTML, TXT·Сохранение ссылок для быстрого доступа к папкам·Специальный режим просмотра эскизов файловO portable:·Портативная версия программы создаётся на этапе установки. —————————————————————————————————Так же портативная версия предоставлена разработчиком, работает без инсталляции на ПК.Распространяется в виде авторских архивов по причине высокой степени сжатия и наличия файлов нулевой длины с контрольными суммами.Q-Dir_PortableCRC32: AC5FAB4FMD5: C9481261044DDEA27A9511377BE65713SHA-1: A64B8E96B4AFB6E3CFB7AEBCA38528CD14A19411Q-Dir_Portable_х64CRC32: 123181A4MD5: F595E943DA27F0A324EC5BF5FF222A31SHA-1: 89AD4649868BFB07B113364F5DBB389C65EB2AD8 Что нового:New in version 8.95 // 6 October 2020• Improvements in the address bars and navigation area• Corrections in the Explorer view print function• General improvements in the Quad-Explore Q-Dir• Update the language files
Скриншоты Файловый менеджер — Q-Dir 8.95 + Portable торрент:

Скачать Файловый менеджер — Q-Dir 8.95 + Portable через торрент:

q-dir-8_95-portable.torrent (cкачиваний: 56)

Q-Dir оригинальный менеджер файлов 8.25 + Portable

Файловый менеджер с оригинальным четырехпанельным интерфейсом и широкими возможностями по работе с файлами. Работает с любого съемного устройства. Многоязычный интерфейс.Q-Dir позволяет получать быстрый доступ к часто используемым папкам с помощью ссылок «Quick-Link’s», поддерживает функцию drag&drop, работает с буфером обмена, поддерживает следующие типы папок: ZIP, FTP, сетевые, системные, ярлыки. Позволяет просматривать изображения, имеет встроенную «лупу». Может выделять в проводнике цветом различные типы файлов, фильтровать файлы и многое другое. Возможность экспорта в XLS, CSV, TXT, HTML. Имеет специальный режим предварительного просмотра файлов.Системные требования:·Windows Servers 2000-2016Windows XP — Windows 10 (x64 / x86)Торрент Q-Dir оригинальный менеджер файлов 8.25 + Portable подробно:Возможности программы:·Быстрый и легкий доступ к жестким дискам/сетевым дискам/USB-флешкам/дискетам·Функция «лупа»·Поддержка Drag & Drop·12 видов панелей (четыре панели/две/одна в разных видах)·Поддержка вкладок·Быстрый доступ к часто-используемым папкам·Настройка любым цветом определенного расширения файла·Поддержка Zip, FTP·Настройка ассоциаций под любое расширение файла·Поддержка экспорта в CSV, XLS, HTML, TXT·Сохранение ссылок для быстрого доступа к папкам·Специальный режим просмотра эскизов файловO portable:·Портативная версия программы представлена разработчиком работает без инсталляции на компьютер.·Портативная версия программы создаётся на этапе установки. —————————————————————————————————Так же портативная версия предоставлена разработчиком, работает без инсталляции на ПК.Распространяется в виде авторских архивов по причине высокой степени сжатия и наличия файлов нулевой длины.·Контрольные суммы:Q-Dir_PortableCRC32: B8CCFFECMD5: 9887B51E7B35E79B56EC66466100C744SHA-1: 77ED8EF2CB71E7F4CA1DA05749A62E04587A3998Q-Dir_Portable_х64CRC32: 09A6FE4CMD5: 2713FAAF4160C2926B71EEE40759685ASHA-1: 193E4A25CCA8314CDE6735F4D0FEFFF42560B0FF Что нового:New in version 8.25 // 18 May 2020• Corrections to parameters: -install /silent• Improvements in the individual directory structures• Important update of the language files
Скриншоты Q-Dir оригинальный менеджер файлов 8.25 + Portable торрент:

Скачать Q-Dir оригинальный менеджер файлов 8.25 + Portable через торрент:

q-dir-8_25-portable.torrent (cкачиваний: 33)

Запись данных в файл

Для записи данных в файл, мы сначала открываем файл в режиме записи, затем создаем поток вывода, направленный в файл, и используем оператор для записи данных в этот поток. В примере ниже имена пяти дистрибутивов Linux записываются в файл :

#include <QTextStream>
#include <QFile>

int main() {

QTextStream out(stdout);

// Создаем объект класса QFile и связываем его с указанным именем файла
QString filename = «C:\\distros.txt»;
QFile file(filename);

// Открываем файл в режиме «Только для записи»
if (file.open(QIODevice::WriteOnly)) {
QTextStream out(&file); // поток записываемых данных направляем в файл

// Для записи данных в файл используем оператор <<
out << «Xubuntu» << endl;
out << «Arch» << endl;
out << «Debian» << endl;
out << «Redhat» << endl;
out << «Slackware» << endl;

} else {

qWarning(«Could not open file»);
}

// Закрываем файл
file.close();
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

#include <QTextStream>
#include <QFile>
 

intmain(){

QTextStream out(stdout);

// Создаем объект класса QFile и связываем его с указанным именем файла

QString filename=»C:\\distros.txt»;

QFile file(filename);

// Открываем файл в режиме «Только для записи»

if(file.open(QIODevice::WriteOnly)){

QTextStream out(&file);// поток записываемых данных направляем в файл

// Для записи данных в файл используем оператор <<

out<<«Xubuntu»<<endl;

out<<«Arch»<<endl;

out<<«Debian»<<endl;

out<<«Redhat»<<endl;

out<<«Slackware»<<endl;

}else{

qWarning(«Could not open file»);

}

// Закрываем файл

file.close();

}

В результате по заданному вами пути программа создаст файл со следующим содержимым:

Public Members

  • enum { Dirs = 0x001, Files = 0x002, Drives = 0x004, NoSymLinks = 0x008, All = 0x007, TypeMask = 0x00F, Readable = 0x010, Writable = 0x020, Executable = 0x040, RWEMask = 0x070, Modified = 0x080, Hidden = 0x100, System = 0x200, AccessMask = 0x3F0, DefaultFilter = -1 }
  • enum { Name = 0x00, Time = 0x01, Size = 0x02, Unsorted = 0x03, SortByMask = 0x03, DirsFirst = 0x04, Reversed = 0x08, IgnoreCase = 0x10, LocaleAware = 0x20, DefaultSort = -1 }
  • ()
  • ( const QString & path, const QString & nameFilter = QString::null, int sortSpec = Name | IgnoreCase, int filterSpec = All )
  • ( const QDir & d )
  • virtual ()
  • QDir & ( const QDir & d )
  • QDir & ( const QString & path )
  • virtual void ( const QString & path )
  • virtual QString () const
  • virtual QString () const
  • virtual QString () const
  • virtual QString () const
  • virtual QString ( const QString & fileName, bool acceptAbsPath = TRUE ) const
  • virtual QString ( const QString & fileName, bool acceptAbsPath = TRUE ) const
  • virtual bool ( const QString & dirName, bool acceptAbsPath = TRUE )
  • virtual bool ()
  • QString () const
  • virtual void ( const QString & nameFilter )
  • FilterSpec () const
  • virtual void ( int filterSpec )
  • SortSpec () const
  • virtual void ( int sortSpec )
  • bool () const
  • virtual void ( bool enable )
  • uint () const
  • QString ( int index ) const
  • virtual QStrList encodedEntryList ( int filterSpec = DefaultFilter, int sortSpec = DefaultSort ) const  (obsolete)
  • virtual QStrList encodedEntryList ( const QString & nameFilter, int filterSpec = DefaultFilter, int sortSpec = DefaultSort ) const  (obsolete)
  • virtual QStringList ( int filterSpec = DefaultFilter, int sortSpec = DefaultSort ) const
  • virtual QStringList ( const QString & nameFilter, int filterSpec = DefaultFilter, int sortSpec = DefaultSort ) const
  • virtual const QFileInfoList * ( int filterSpec = DefaultFilter, int sortSpec = DefaultSort ) const
  • virtual const QFileInfoList * ( const QString & nameFilter, int filterSpec = DefaultFilter, int sortSpec = DefaultSort ) const
  • virtual bool ( const QString & dirName, bool acceptAbsPath = TRUE ) const
  • virtual bool ( const QString & dirName, bool acceptAbsPath = TRUE ) const
  • virtual bool () const
  • virtual bool () const
  • virtual bool () const
  • virtual bool () const
  • virtual void ()
  • virtual bool ( const QDir & d ) const
  • virtual bool ( const QDir & d ) const
  • virtual bool ( const QString & fileName, bool acceptAbsPath = TRUE )
  • virtual bool ( const QString & oldName, const QString & newName, bool acceptAbsPaths = TRUE )
  • virtual bool ( const QString & name, bool acceptAbsPath = TRUE )
  • void () const
Оцените статью
Рейтинг автора
5
Материал подготовил
Андрей Измаилов
Наш эксперт
Написано статей
116
Добавить комментарий