当前位置: 首页>>代码示例>>Java>>正文


Java BasicFileAttributeView.setTimes方法代码示例

本文整理汇总了Java中java.nio.file.attribute.BasicFileAttributeView.setTimes方法的典型用法代码示例。如果您正苦于以下问题:Java BasicFileAttributeView.setTimes方法的具体用法?Java BasicFileAttributeView.setTimes怎么用?Java BasicFileAttributeView.setTimes使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在java.nio.file.attribute.BasicFileAttributeView的用法示例。


在下文中一共展示了BasicFileAttributeView.setTimes方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: postVisitDirectory

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
@Override
public FileVisitResult postVisitDirectory(Path dir, IOException exc)
		throws IOException {
	try {
		if (copyOptionsSet.contains(COPY_ATTRIBUTES)) {
			/*
			 * Copy file times. Inspired by
			 * java.nio.file.CopyMoveHelper.copyToForeignTarget()
			 */
			BasicFileAttributes attrs = readAttributes(dir,
					BasicFileAttributes.class, linkOptions);
			BasicFileAttributeView view = getFileAttributeView(
					toDestination(dir), BasicFileAttributeView.class,
					linkOptions);
			view.setTimes(attrs.lastModifiedTime(), attrs.lastAccessTime(),
					attrs.creationTime());
		}
		return CONTINUE;
	} catch (IOException ex) {
		return visitFileFailed(dir, ex);
	}
}
 
开发者ID:apache,项目名称:incubator-taverna-language,代码行数:23,代码来源:RecursiveCopyFileVisitor.java

示例2: testSetLastModifiedTimeAfterMove

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
@Test
public void testSetLastModifiedTimeAfterMove() throws Exception {
    Path path = root.resolve("test");
    Files.createFile(path);
    BasicFileAttributeView view = Files.getFileAttributeView(path, BasicFileAttributeView.class);
    
    Path movedTo = root.resolve("test2");
    Files.move(path, movedTo);
    long newModified = roundToSeconds(System.currentTimeMillis()) - 10000;
    
    try {
        view.setTimes(FileTime.fromMillis(newModified), null, null);
        fail();
    } catch (NoSuchFileException e) {
        //pass
    }
    
}
 
开发者ID:sbridges,项目名称:ephemeralfs,代码行数:19,代码来源:BasicFileAttributesTest.java

示例3: main

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
public static void main( String[] args )
        throws IOException {

    Path atxt = Paths.get( "a.txt" );
    BasicFileAttributes basic = Files.readAttributes( atxt , BasicFileAttributes.class );
    FileTime creationTime = basic.creationTime();
    FileTime lastAccessTime = basic.lastAccessTime();
    FileTime lastModifiedTime = basic.lastModifiedTime();
    mostrar( creationTime , lastAccessTime , lastModifiedTime , basic );

    System.out.println( "\nsetando os atributos de a.txt para a_copy.txt" );
    Path aCopy = Paths.get( "a_copy.txt" );
    BasicFileAttributeView basicView = Files.getFileAttributeView( aCopy ,
                                                                   BasicFileAttributeView.class );
    basicView.setTimes( lastModifiedTime , lastAccessTime , creationTime );
    basic = Files.readAttributes( aCopy , BasicFileAttributes.class );
    creationTime = basic.creationTime();
    lastAccessTime = basic.lastAccessTime();
    lastModifiedTime = basic.lastModifiedTime();
    mostrar( creationTime , lastAccessTime , lastModifiedTime , basic );
}
 
开发者ID:juliocnsouzadev,项目名称:ocpjp,代码行数:22,代码来源:WorkingBasicFileAttributes.java

示例4: setTimes

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
/**
 * Sets the {@link Path}'s last modified time and last access time to
 * the given valid times.
 *
 * @param mtime the modification time to set (only if no less than zero).
 * @param atime the access time to set (only if no less than zero).
 * @throws IOException if setting the times fails.
 */
@Override
public void setTimes(Path p, long mtime, long atime) throws IOException {
  try {
    BasicFileAttributeView view = Files.getFileAttributeView(
        pathToFile(p).toPath(), BasicFileAttributeView.class);
    FileTime fmtime = (mtime >= 0) ? FileTime.fromMillis(mtime) : null;
    FileTime fatime = (atime >= 0) ? FileTime.fromMillis(atime) : null;
    view.setTimes(fmtime, fatime, null);
  } catch (NoSuchFileException e) {
    throw new FileNotFoundException("File " + p + " does not exist");
  }
}
 
开发者ID:nucypher,项目名称:hadoop-oss,代码行数:21,代码来源:RawLocalFileSystem.java

示例5: preVisitDirectory

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
@Override
public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs) throws IOException {
    Path resolve = resolve(dir);
    if (!Files.exists(resolve)) {
        Files.createDirectories(resolve);
        BasicFileAttributeView view = Files.getFileAttributeView(resolve, BasicFileAttributeView.class);
        view.setTimes(attrs.lastModifiedTime(), attrs.lastAccessTime(), attrs.creationTime());
    }
    return FileVisitResult.CONTINUE;
}
 
开发者ID:zjnu-acm,项目名称:judge,代码行数:11,代码来源:CopyHelper.java

示例6: setAttributes

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
@Override
public void setAttributes(File downloadFile, Date created, Date lastModified) throws IOException {
    BasicFileAttributeView attributes = Files.getFileAttributeView(downloadFile.toPath(), BasicFileAttributeView.class);
    FileTime createdFt = FileTime.fromMillis(created.getTime());
    FileTime lastModifiedFt = FileTime.fromMillis(lastModified.getTime());
    attributes.setTimes(lastModifiedFt, lastModifiedFt, createdFt);
}
 
开发者ID:wooti,项目名称:onedrive-java-client,代码行数:8,代码来源:RWFileSystemProvider.java

示例7: setTimes

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
public static void setTimes(Path path, Date lastModifiedTime, Date lastAccessTime, Date creationTIme) throws IOException {
	BasicFileAttributeView attrs = Files.getFileAttributeView(path, BasicFileAttributeView.class);
	attrs.setTimes(
			(lastModifiedTime == null) ? null : FileTime.fromMillis(lastModifiedTime.getTime()),
			(lastAccessTime == null) ? null : FileTime.fromMillis(lastAccessTime.getTime()),
			(creationTIme == null) ? null : FileTime.fromMillis(creationTIme.getTime())
			);
}
 
开发者ID:mifmi,项目名称:mifmi-commons4j,代码行数:9,代码来源:FileUtilz.java

示例8: setFileTimes

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
/**
 * Restore the creation time , access time and modified time to local
 *
 * @param filePath path of local file
 * @param creationTime creation time got from server
 * @param lastModifiedTime modified time got from server
 * @param lastAccessedTime last aceess time got from server
 */
private void setFileTimes(final String filePath,
                          final String creationTime,
                          final String lastModifiedTime,
                          final String lastAccessedTime)
    throws IOException
{
    final BasicFileAttributeView attributes = Files.getFileAttributeView(Paths.get(filePath), BasicFileAttributeView.class);
    final FileTime timeCreation = FileTime.fromMillis(Long.parseLong(creationTime));
    final FileTime timeModified = FileTime.fromMillis(Long.parseLong(lastModifiedTime));
    final FileTime timeAccessed = FileTime.fromMillis(Long.parseLong(lastAccessedTime));
    attributes.setTimes(timeModified, timeAccessed, timeCreation);
}
 
开发者ID:SpectraLogic,项目名称:ds3_java_sdk,代码行数:21,代码来源:AbstractMetadataRestore.java

示例9: testView

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
@Test
public void testView() throws IOException {
  BasicFileAttributeView view = provider.view(fileLookup(), NO_INHERITED_VIEWS);

  assertThat(view).isNotNull();
  assertThat(view.name()).isEqualTo("basic");

  BasicFileAttributes attrs = view.readAttributes();
  assertThat(attrs.fileKey()).isEqualTo(0);

  FileTime time = attrs.creationTime();
  assertThat(attrs.lastAccessTime()).isEqualTo(time);
  assertThat(attrs.lastModifiedTime()).isEqualTo(time);

  view.setTimes(null, null, null);

  attrs = view.readAttributes();
  assertThat(attrs.creationTime()).isEqualTo(time);
  assertThat(attrs.lastAccessTime()).isEqualTo(time);
  assertThat(attrs.lastModifiedTime()).isEqualTo(time);

  view.setTimes(FileTime.fromMillis(0L), null, null);

  attrs = view.readAttributes();
  assertThat(attrs.creationTime()).isEqualTo(time);
  assertThat(attrs.lastAccessTime()).isEqualTo(time);
  assertThat(attrs.lastModifiedTime()).isEqualTo(FileTime.fromMillis(0L));
}
 
开发者ID:google,项目名称:jimfs,代码行数:29,代码来源:BasicAttributeProviderTest.java

示例10: setFileCreationDate

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
public static void setFileCreationDate(String filePath, Date creationDate) throws IOException
{
    BasicFileAttributeView attributes = Files.getFileAttributeView(Paths.get(filePath), BasicFileAttributeView.class);
    FileTime time = FileTime.fromMillis(creationDate.getTime());
    attributes.setTimes(time, time, time);
}
 
开发者ID:RetroFloppy,项目名称:transformenator,代码行数:7,代码来源:ExtractIBM8Files.java

示例11: setFileCreationDate

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
private void setFileCreationDate(File f, long time) throws IOException {
  BasicFileAttributeView attributes = Files.getFileAttributeView(f.toPath(), BasicFileAttributeView.class);
  FileTime creationTime = FileTime.fromMillis(time);
  attributes.setTimes(creationTime, creationTime, creationTime);
}
 
开发者ID:instalint-org,项目名称:instalint,代码行数:6,代码来源:GlobalTempFolderProviderTest.java

示例12: initWriteFile

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
/**
 * Creates the new file for writing.
 * @param chunk
 * @throws IOException
 */
protected void initWriteFile(FileChunk chunk) throws IOException
{
  file = new File(dir, chunk.getFileName());
  
  moveExistingFile();
  
  fileName = chunk.getFileName();
  BasicFileAttributeView attrView = Files
      .getFileAttributeView(file.toPath(), BasicFileAttributeView.class);
  
  attrView.setTimes(FileTime.fromMillis(chunk.getLastModifiedTime()),
      FileTime.fromMillis(chunk.getLastAccessTime()),
      FileTime.fromMillis(chunk.getCreationTime()));
  
  getFileAttributes();
  
  fileSize = file.length();
  
  
}
 
开发者ID:javanotes,项目名称:reactive-data,代码行数:26,代码来源:AbstractFileChunkHandler.java

示例13: main

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
public static void main(String[] args) throws IOException {
//    第三个并且是最后一个例子涉及了利用 java.nio.file.attribute 包中的类获取并设置文件属性的新的 API。
//
//    新的 API 能够提供对各种文件属性的访问。在以前的 Java 版本中,仅能得到基本的文件属性集(大小、修改时间、文件是否隐藏、以及它是文件还是目录)。为了获取或者修改更多的文件属性,必须利用运行所在平台特定的本地代码来实现,这很困难。很幸运的是,Java 7 能够允许您通过很简单的方式,利用 java.nio.file.attribute 类来读取,如果可能,修改扩展的属性集,完全去掉了这些操作的平台特定属性。
//
//    在新的 API 中有七个属性视图,其中一些特定于操作系统。这些 “ 视图 ” 类允许您获取并设置任何关联的属性,并且其中每个都具有对应的包含真实属性信息的属性类。让我们依次来看一下。
//    AclFileAttributeView 与 AclEntry
//
//    AclFileAttributeView 允许您为特定文件设置 ACL 及文件所有者属性。其 getAcl() 方法返回一个 List of AclEntry 对象,每个对应文件的一个权限集。其 setAcl(List<AclEntry>) 方法允许您修改该访问列表。这些属性视图仅可用于 Microsoft® Windows® 系统。
//    BasicFileAttributeView 与 BasicFileAttributes
//
//    这一视图类允许您获取一系列 —— 平常的 —— 基本文件属性,构建于以前的 Java 版本之上。其 readAttributes() 方法返回一个 BasicFileAttributes 实例,该实例包含最后修改时间、最后访问时间、创建时间、大小、以及文件属性等细节(常规文件、目录、符号链接、或者其他)。这一属性视图在所有平台上均可用。
    File attribFile = new File(".");
    Path attribPath = attribFile.toPath();
//    为获取想要的文件属性视图,我们在 Path 上使用 getFileAttributeView(Class viewClass) 方法。为获取 BasicFileAttributeView for attribPath,我们简单地调用:

    BasicFileAttributeView basicFileAttributeView =Files.getFileAttributeView(attribPath, BasicFileAttributeView.class);
//    正如前面所描述的,为从 BasicFileAttributeView 获取 BasicFileAttributes,我们只要调用其 readAttributes() 方法:
    BasicFileAttributes basicAttribs = basicFileAttributeView.readAttributes();
//    那么这样就可以了,现在已经得到了您所想要的任何基本文件属性。对于 BasicFileAttributes,只有创建、最后修改、以及最后访问时间可被修改(因为改变文件大小或者类型没有意义)。为改变这些,我们可以使用 java.nio.file.attribute.FileTime 类来创建新的时间,然后在 BasicFileAttributeView 上调用 setTimes() 方法。例如,我们可以不断地更新文件的最后修改时间。
    FileTime newModTime
            = FileTime.fromMillis(basicAttribs.lastModifiedTime().toMillis() + 60000);
    basicFileAttributeView.setTimes(newModTime, null, null);
//    这两个 null 指出,我们不想改变这一文件的最后访问时间或者创建时间。如果以前面相同的方式再次检查基本属性,您会发现最后修改时间已被修改,但是创建时间和最后访问时间还保持原样。

//    DosFileAttributeView 与 DosFileAttributes
//
//    这一视图类允许您获取指定给 DOS 的属性。(您可能会猜想,这一视图仅用于 Windows 系统。)其 readAttributes() 方法返回一个 DosFileAttributes 实例,该实例包含有问题的文件是否为只读、隐藏、系统文件、以及存档文件等细节信息。这一视图还包含针对每个属性的 set*(boolean) 方法。
//    FileOwnerAttributeView 与 UserPrincipal
//
//    这一视图类允许您获取并设置特定文件的所有者。其 getOwner()方法返回一个 UserPrincipal(还处于 java.nio.file.attribute 包中),其又具有 getName() 方法,来返回包含所有者名字的 String。该视图还提供 setOwner(UserPrincipal) 方法用于变更文件所有者。该视图在所有平台上都可用。
//    FileStoreSpaceAttributeView 与 FileStoreSpaceAttributes
//
//    这一用很吸引人的方式命名的类,允许您获取有关特定文件存储的信息。其 readAttributes() 方法返回一个包含文件存储的整个空间、未分配空间、以及已使用空间细节的 FileStoreSpaceAttributes 实例。这一视图在所有平台上都可用。
//    PosixFileAttributeView 与 PosixFileAttributes
//
//    这一视图类,仅在 UNIX® 系统上可用,允许您获取并设置指定给 POSIX(Portable Operating System Interface)的属性。其 readAttributes() 方法返回一个包含有关这一文件的所有者、组所有者、以及这一文件许可(这些细节通常用 UNIX chmod 命令设置)的 PosixFileAttributes 实例。这一视图还提供 setOwner(UserPrincipal)、 setGroup(GroupPrincipal)、以及 setPermissions(Set<PosixFilePermission>) 来修改这些属性。
//    UserDefinedFileAttributeView 与 String
//
//    这一视图类,仅可用于 Windows,允许您获取并设置文件的扩展属性。 这些属性跟其他的不同,它们只是名称值对,并可按需对其进行设置。 如果想向文件增加一些隐藏的元数据,而不必修改文件内容,这就很有用了。 这一属性提供 list() 方法,来为相关的文件返回 List of String 扩展属性的名字。
//
//    有了其名字后,就要获取特定属性的内容,这一视图具有一个 size(String name) 方法来返回属性值的大小,以及一个 read(String name, ByteBuffer dest) 方法来将属性值读取到 ByteBuffer 中。这一视图还提供 write(String name, ByteBuffer source) 方法来创建或者修改属性,以及一个 delete(String name) 方法来完全移除现有的属性。
//
//    这可能是最有趣的新属性视图,因为它允许您利用任意 String 名字和 ByteBuffer 值向文件增加属性。这很对 —— 其值是个 ByteBuffer,因此您可以在这里存储任何二进制数据。

    UserDefinedFileAttributeView userView
            = Files.getFileAttributeView(attribPath, UserDefinedFileAttributeView.class);
//    为获取用户为这一文件定义的属性名,我们在视图上调用 list() 方法:
    List<String> attribList = userView.list();
//    一旦我们拥有了想得到相关值的特定属性名,就为该值分配一个大小合适的 ByteBuffer,然后调用视图的 read(String, ByteBuffer) 方法:
//
//    ByteBuffer attribValue = ByteBuffer.allocate(userView.size(attribName));
//    userView.read(attribName, attribValue);
//
//    attribValue 现在包含了为那一特定属性所存储的任何数据。 想设置自己的属性,只需创建 ByteBuffer 并按需填入数据,然后在视图上调用 write(String,
// ByteBuffer) 方法:
//
//    userView.write(attribName, attribValue);
  }
 
开发者ID:edgar615,项目名称:javase-study,代码行数:60,代码来源:AttributeMain.java

示例14: createFileWithDate

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
private Path createFileWithDate(Path path, FileTime todayMinus15) throws IOException {
    Path file = Files.createFile(path);
    BasicFileAttributeView fileAttributeView = Files.getFileAttributeView(file, BasicFileAttributeView.class);
    fileAttributeView.setTimes(todayMinus15, todayMinus15, todayMinus15);
    return file;
}
 
开发者ID:ConSol,项目名称:sakuli,代码行数:7,代码来源:LogCleanUpResultServiceImplTest.java

示例15: setTimes

import java.nio.file.attribute.BasicFileAttributeView; //导入方法依赖的package包/类
/**
  * Set access time of a file
  * @param p The path
  * @param mtime Set the modification time of this file.
  *              The number of milliseconds since Jan 1, 1970. 
  *              A value of -1 means that this call should not set modification time.
  * @param atime Set the access time of this file.
  *              The number of milliseconds since Jan 1, 1970. 
  *              A value of -1 means that this call should not set access time.
  */
 @Override
 public void setTimes(Path path, long mtime, long atime) throws IOException {	  
java.nio.file.Path p = FileSystems.getDefault().getPath(pathToFile(path).getAbsolutePath());
BasicFileAttributeView view = Files.getFileAttributeView(p, BasicFileAttributeView.class);	  
view.setTimes(mtime == -1 ? null : FileTime.fromMillis(mtime),
  atime == -1 ? null : FileTime.fromMillis(atime), null);
 }
 
开发者ID:intel-hpdd,项目名称:lustre-connector-for-hadoop,代码行数:18,代码来源:LustreFileSystem.java


注:本文中的java.nio.file.attribute.BasicFileAttributeView.setTimes方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。