Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/Java/Openjdk/src/jdk.jpackage/share/native/common/   (Sun/Oracle ©)  Datei vom 13.11.2022 mit Größe 4 kB image not shown  

Quelle  FileUtils.h   Sprache: C

 
/*
 * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */


#ifndef FILEUTILS_H
#define FILEUTILS_H


#include <fstream>
#include "SysInfo.h"


namespace FileUtils {
    extern const tstring::value_type pathSeparator;

    // Returns 'true' if the given character is a path separator.
    bool isDirSeparator(const tstring::value_type c);

    // returns directory part of the path.
    // returns empty string if the path contains only filename.
    // if the path ends with slash/backslash,
    // returns removeTrailingSlashes(path).
    tstring dirname(const tstring &path);

    // returns basename part of the path
    // if the path ends with slash/backslash, returns empty string.
    tstring basename(const tstring &path);

    /**
     * Translates forward slashes to back slashes and returns lower case version
     * of the given string.
     */

    tstring normalizePath(tstring v);

    // Returns suffix of the path. If the given path has a suffix the first
    // character of the return value is '.'.
    // Otherwise return value if empty string.
    tstring suffix(const tstring &path);

    // combines two strings into a path
    tstring combinePath(const tstring& parent, const tstring& child);

    // removes trailing slashes and backslashes in the path if any
    tstring removeTrailingSlash(const tstring& path);

    /**
     * Replace file suffix, example replaceSuffix("file/path.txt", ".csv")
     * @param path file path to replace suffix
     * @param suffix new suffix for path
     * @return return file path with new suffix
     */

    tstring replaceSuffix(const tstring& path, const tstring& suffix=tstring());

    // remove the executable suffix if there is one
    tstring stripExeSuffix(const tstring& path);

    /**
     * Returns absolute path of the given path.
     * If the given string is empty, returns absolute path to the current
     * directory.
     */

    tstring toAbsolutePath(const tstring& path);

    // Helper to construct path from multiple components.
    //
    // Sample usage:
    //  Construct "c:\Program Files\Java" string from three components
    //
    //  tstring path = FileUtils::mkpath()  << _T("c:")
    //                                      << _T("Program Files")
    //                                      << _T("Java");
    //
    class mkpath {
    public:
        operator const tstring& () const {
            return path;
        }

        mkpath& operator << (const tstring& p) {
            path = combinePath(path, p);
            return *this;
        }

        // mimic std::string
        const tstring::value_type* c_str() const {
            return path.c_str();
        }
    private:
        tstring path;
    };

    // checks if the file or directory exists
    bool isFileExists(const tstring &filePath);

    // checks is the specified file is a directory
    // returns false if the path does not exist
    bool isDirectory(const tstring &filePath);

    // checks if the specified directory is not empty
    // returns true if the path is an existing directory and
    // it contains at least one file other than "." or "..".
    bool isDirectoryNotEmpty(const tstring &dirPath);

// FileUtils

#endif // FILEUTILS_H

94%


¤ Dauer der Verarbeitung: 0.26 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung ist noch experimentell.