當前位置: 首頁>>代碼示例>>Java>>正文


Java IFileSystem.O_RDWR屬性代碼示例

本文整理匯總了Java中org.apache.harmony.luni.platform.IFileSystem.O_RDWR屬性的典型用法代碼示例。如果您正苦於以下問題:Java IFileSystem.O_RDWR屬性的具體用法?Java IFileSystem.O_RDWR怎麽用?Java IFileSystem.O_RDWR使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在org.apache.harmony.luni.platform.IFileSystem的用法示例。


在下文中一共展示了IFileSystem.O_RDWR屬性的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: getFileChannel

public static FileChannel getFileChannel(Object stream, int fd, int mode) {
    switch (mode) {
        case IFileSystem.O_RDONLY:
            return new ReadOnlyFileChannel(stream, fd);
        case IFileSystem.O_WRONLY:
            return new WriteOnlyFileChannel(stream, fd);
        case IFileSystem.O_RDWR:
            return new ReadWriteFileChannel(stream, fd);
        case IFileSystem.O_RDWRSYNC:
            return new ReadWriteFileChannel(stream, fd);
        case IFileSystem.O_APPEND:
            return new WriteOnlyFileChannel(stream, fd, true);
        default:
            throw new RuntimeException("Unknown file channel type " + mode);
    }
}
 
開發者ID:keplersj,項目名稱:In-the-Box-Fork,代碼行數:16,代碼來源:FileChannelFactory.java

示例2: getFileChannel

public static FileChannel getFileChannel(Object stream, long fd, int mode) {
    switch (mode) {
        case IFileSystem.O_RDONLY:
            return new ReadOnlyFileChannel(stream, fd);
        case IFileSystem.O_WRONLY:
            return new WriteOnlyFileChannel(stream, fd);
        case IFileSystem.O_RDWR:
            return new ReadWriteFileChannel(stream, fd);
        case IFileSystem.O_RDWRSYNC:
            return new ReadWriteFileChannel(stream, fd);
        case IFileSystem.O_APPEND:
            return new WriteOnlyFileChannel(stream, fd, true);
        default:
            // nio.09=Unknown file channel type: {0}
            throw new RuntimeException(Messages.getString("nio.09", mode)); //$NON-NLS-1$
    }
}
 
開發者ID:shannah,項目名稱:cn1,代碼行數:17,代碼來源:FileChannelFactory.java

示例3: getFileChannel

public static FileChannel getFileChannel(Object stream, long fd, int mode) {
       switch(mode){
       case IFileSystem.O_RDONLY:
           return new ReadOnlyFileChannel(stream, fd);
       case IFileSystem.O_WRONLY:
           return new WriteOnlyFileChannel(stream, fd);
       case IFileSystem.O_RDWR:
           return new ReadWriteFileChannel(stream, fd);
       case IFileSystem.O_RDWRSYNC:
           return new ReadWriteFileChannel(stream, fd);
       case IFileSystem.O_APPEND:
           return new WriteOnlyFileChannel(stream, fd, true);
       default:
           // nio.09=Unknown file channel type: {0}
           throw new RuntimeException(Messages.getString("nio.09", mode));  //$NON-NLS-1$
       }
}
 
開發者ID:freeVM,項目名稱:freeVM,代碼行數:17,代碼來源:FileChannelFactory.java

示例4: RandomAccessFile

/**
 * Constructs a new RandomAccessFile on the File <code>file</code> and
 * opens it according to the access String in <code>mode</code>. The
 * access mode may be one of <code>"r"</code> for read access only, or
 * <code>"rw"</code> for read/write access.
 * 
 * @param file
 *            the File to open.
 * @param mode
 *            "r" for read only, or "rw" for read/write.
 * 
 * @throws FileNotFoundException
 *             If the <code>mode</code> is incorrect or the File cannot be
 *             opened in the requested <code>mode</code>.
 * 
 * @see java.lang.SecurityManager#checkRead(FileDescriptor)
 * @see java.lang.SecurityManager#checkWrite(FileDescriptor)
 */
public RandomAccessFile(File file, String mode)
        throws FileNotFoundException {
    super();

    int options = 0;
    
    fd = new FileDescriptor();
   
    if (mode.equals("r")) { //$NON-NLS-1$
        isReadOnly = true;
        fd.readOnly = true;
        options = IFileSystem.O_RDONLY;
    } else if (mode.equals("rw") || mode.equals("rws") || mode.equals("rwd")) { //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
        isReadOnly = false;
        options = IFileSystem.O_RDWR;

        if (mode.equals("rws")) { //$NON-NLS-1$
            // Sync file and metadata with every write
            syncMetadata = true;
        } else if (mode.equals("rwd")) { //$NON-NLS-1$
            // Sync file, but not necessarily metadata
            options = IFileSystem.O_RDWRSYNC;
        }
    } else {
        throw new IllegalArgumentException(Msg.getString("K0081")); //$NON-NLS-1$
    }

    SecurityManager security = System.getSecurityManager();
    if (security != null) {
        security.checkRead(file.getPath());
        if (!isReadOnly) {
            security.checkWrite(file.getPath());
        }
    }
    
    fd.descriptor = fileSystem.open(file.properPath(true), options);
    channel = FileChannelFactory.getFileChannel(this, fd.descriptor,
            options);

    // if we are in "rws" mode, attempt to sync file+metadata
    if (syncMetadata) {
        try {
            fd.sync();
        } catch (IOException e) {
            // Ignored
        }
    }
}
 
開發者ID:freeVM,項目名稱:freeVM,代碼行數:66,代碼來源:RandomAccessFile.java


注:本文中的org.apache.harmony.luni.platform.IFileSystem.O_RDWR屬性示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。