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


Java FileUtil.createParentDirs方法代碼示例

本文整理匯總了Java中com.intellij.openapi.util.io.FileUtil.createParentDirs方法的典型用法代碼示例。如果您正苦於以下問題:Java FileUtil.createParentDirs方法的具體用法?Java FileUtil.createParentDirs怎麽用?Java FileUtil.createParentDirs使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在com.intellij.openapi.util.io.FileUtil的用法示例。


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

示例1: saveWhiteList

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
public static void saveWhiteList(File cachedWhiteList, Map<String, Set<String>> classesWhiteList) {
  try {
    FileUtil.createParentDirs(cachedWhiteList);
    PrintWriter writer = new PrintWriter(cachedWhiteList);
    try {
      for (String packageName : classesWhiteList.keySet()) {
        writer.println("." + packageName);
        final Set<String> classes = classesWhiteList.get(packageName);
        for (String aClass : classes) {
          writer.println(aClass);
        }
      }
    }
    finally {
      writer.close();
    }
  }
  catch (IOException e) {
    LOG.error(e);
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:22,代碼來源:AppEngineSdkUtil.java

示例2: save

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
public synchronized void save() {
  try {
    FileUtil.createParentDirs(myTargetsFile);
    DataOutputStream output = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(myTargetsFile)));
    try {
      output.writeInt(0);
      output.writeInt(myTargetIds.size());
      for (Map.Entry<BuildTarget<?>, Integer> entry : myTargetIds.entrySet()) {
        IOUtil.writeString(entry.getKey().getId(), output);
        output.writeInt(entry.getValue());
      }
    }
    finally {
      output.close();
    }
  }
  catch (IOException e) {
    LOG.info("Cannot save " + myTargetType.getTypeId() + " targets data: " + e.getMessage(), e);
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:21,代碼來源:BuildTargetTypeState.java

示例3: save

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
public void save(CompileContext context) {
  try {
    File configFile = getConfigFile();
    FileUtil.createParentDirs(configFile);
    Writer out = new BufferedWriter(new FileWriter(configFile));
    try {
      String current = getCurrentState(context);
      out.write(current);
      myConfiguration = current;
    }
    finally {
      out.close();
    }
  }
  catch (IOException e) {
    LOG.info("Cannot save configuration of " + myConfiguration, e);
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:19,代碼來源:BuildTargetConfiguration.java

示例4: test2GLimit

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
public void test2GLimit() throws IOException {
  if (!DO_SLOW_TEST) return;
  File file = FileUtil.createTempFile("persistent", "map");
  FileUtil.createParentDirs(file);
  EnumeratorStringDescriptor stringDescriptor = new EnumeratorStringDescriptor();
  PersistentHashMap<String, String> map = null;

  try {
    map = new PersistentHashMap<String, String>(file, stringDescriptor, stringDescriptor);
    for (int i = 0; i < 12000; i++) {
      map.put("abc" + i, StringUtil.repeat("0123456789", 10000));
    }
    map.close();

    map = new PersistentHashMap<String, String>(file,
                                                stringDescriptor, stringDescriptor);
    long len = 0;
    for (String key : map.getAllKeysWithExistingMapping()) {
      len += map.get(key).length();
    }
    assertEquals(1200000000L, len);
  }
  finally {
    clearMap(file, map);
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:27,代碼來源:PersistentMapTest.java

示例5: ResizeableMappedFile

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
public ResizeableMappedFile(@NotNull File file,
                            int initialSize,
                            @Nullable PagedFileStorage.StorageLockContext lockContext,
                            int pageSize,
                            boolean valuesAreBufferAligned,
                            boolean nativeBytesOrder) throws IOException {
  myStorage = new PagedFileStorage(file, lockContext, pageSize, valuesAreBufferAligned, nativeBytesOrder);
  boolean exists = file.exists();
  if (!exists || file.length() == 0) {
    if (!exists) FileUtil.createParentDirs(file);
    writeLength(0);
  }

  myLogicalSize = readLength();
  if (myLogicalSize == 0) {
    try {
      getPagedFileStorage().lock();
      // use direct call to storage.resize() so that IOException is not masked with RuntimeException
      myStorage.resize(initialSize);
    }
    finally {
      getPagedFileStorage().unlock();
    }
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:26,代碼來源:ResizeableMappedFile.java

示例6: extractEntry

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
public static void extractEntry(ZipEntry entry, final InputStream inputStream, File outputDir, boolean overwrite) throws IOException {
  final boolean isDirectory = entry.isDirectory();
  final String relativeName = entry.getName();
  final File file = new File(outputDir, relativeName);
  if (file.exists() && !overwrite) return;

  FileUtil.createParentDirs(file);
  if (isDirectory) {
    file.mkdir();
  }
  else {
    final BufferedInputStream is = new BufferedInputStream(inputStream);
    final BufferedOutputStream os = new BufferedOutputStream(new FileOutputStream(file));
    try {
      FileUtil.copy(is, os);
    }
    finally {
      os.close();
      is.close();
    }
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:23,代碼來源:ZipUtil.java

示例7: saveState

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
public void saveState(@NotNull MyState state) {
  FileUtil.createParentDirs(myFile);
  try {
    final DataOutputStream output = new DataOutputStream(new FileOutputStream(myFile));
    try {
      output.writeLong(state.myManifestFileTimestamp);
      output.writeInt(state.myLibManifestsTimestamps.size());

      for (Object key : state.myLibManifestsTimestamps.keys()) {
        final String strKey = (String)key;
        output.writeUTF(strKey);
        output.writeLong(state.myLibManifestsTimestamps.get(strKey));
      }
      output.writeBoolean(state.myToMerge);
    }
    finally {
      output.close();
    }
  }
  catch (IOException e) {
    LOG.info(e);
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:24,代碼來源:AndroidManifestMergerStateStorage.java

示例8: update

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
public void update(@Nullable MyState state) {
  FileUtil.createParentDirs(myFile);
  try {
    final DataOutputStream output = new DataOutputStream(new FileOutputStream(myFile));
    try {
      output.writeBoolean(state != null);

      if (state != null) {
        output.writeInt(state.myProGuardConfigFiles.size());

        for (Map.Entry<String, Long> entry : state.myProGuardConfigFiles.entrySet()) {
          final String path = entry.getKey();
          final Long timestamp = entry.getValue();
          output.writeUTF(path);
          output.writeLong(timestamp);
        }
      }
    }
    finally {
      output.close();
    }
  }
  catch (IOException e) {
    LOG.info(e);
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:27,代碼來源:AndroidProGuardStateStorage.java

示例9: save

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
public void save(@NotNull ExternalProject externalProject) {
  Output output = null;
  try {
    final File externalProjectDir = externalProject.getProjectDir();
    final File configurationFile =
      getProjectConfigurationFile(new ProjectSystemId(externalProject.getExternalSystemId()), externalProjectDir);
    if (!FileUtil.createParentDirs(configurationFile)) return;

    output = new Output(new FileOutputStream(configurationFile));
    myKryo.writeObject(output, externalProject);

    LOG.debug("Data saved for imported project from: " + externalProjectDir.getPath());
  }
  catch (FileNotFoundException e) {
    LOG.error(e);
  }
  finally {
    StreamUtil.closeStream(output);
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:21,代碼來源:ExternalProjectSerializer.java

示例10: copyProperties

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
public static void copyProperties(final String targetPath, final String fileName) throws IOException {
  final File targetDir = new File(targetPath).getAbsoluteFile();
  final File file = new File(targetDir, fileName);
  FileUtil.createParentDirs(file);
  for (File f = file; f != null && !FileUtil.filesEqual(f, targetDir); f = FileUtilRt.getParentFile(f)) {
    f.deleteOnExit();
  }
  final String resourceName = "/" + fileName;
  final InputStream stream = CopyResourcesUtil.class.getResourceAsStream(resourceName);
  if (stream == null) {
    return;
  }
  copyStreamToFile(stream, file);
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:15,代碼來源:CopyResourcesUtil.java

示例11: BindingsCache

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
public BindingsCache(final Project project) {
  final File cacheStoreDirectory = CompilerPaths.getCacheStoreDirectory(project);
  try {
    if (cacheStoreDirectory != null) {
      FileUtil.createParentDirs(cacheStoreDirectory);
      myCache = createCache(cacheStoreDirectory);
    }
    else {
      myCache = null;
    }
  }
  catch (IOException e) {
    LOG.info(e);
    for (File file : cacheStoreDirectory.listFiles()) {
      if (file.getName().startsWith(BINDINGS_FILE_NAME)) {
        FileUtil.delete(file);
      }
    }
    try {
      myCache = createCache(cacheStoreDirectory);
    }
    catch (IOException e1) {
      LOG.info(e1);
      myCache = null;
    }
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:28,代碼來源:BindingsCache.java

示例12: createKeyStore

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
private static KeyStore createKeyStore(@NotNull String path, @NotNull String password) {
  KeyStore keyStore;
  try {
    keyStore = KeyStore.getInstance(KeyStore.getDefaultType());
    File cacertsFile = new File(path);
    if (cacertsFile.exists()) {
      FileInputStream stream = null;
      try {
        stream = new FileInputStream(path);
        keyStore.load(stream, password.toCharArray());
      }
      finally {
        StreamUtil.closeStream(stream);
      }
    }
    else {
      if (!FileUtil.createParentDirs(cacertsFile)) {
        LOG.error("Cannot create directories: " + cacertsFile.getParent());
        return null;
      }
      keyStore.load(null, password.toCharArray());
    }
  }
  catch (Exception e) {
    LOG.error(e);
    return null;
  }
  return keyStore;
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:30,代碼來源:ConfirmingTrustManager.java

示例13: getOrCreateVirtualFile

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
@NotNull
public static VirtualFile getOrCreateVirtualFile(@Nullable final Object requestor, @NotNull final File file) throws IOException {
  VirtualFile virtualFile = LocalFileSystem.getInstance().refreshAndFindFileByIoFile(file);
  if (virtualFile != null) {
    return virtualFile;
  }
  File absoluteFile = file.getAbsoluteFile();
  FileUtil.createParentDirs(absoluteFile);

  File parentFile = absoluteFile.getParentFile();
  // need refresh if the directory has just been created
  final VirtualFile parentVirtualFile = StringUtil.isEmpty(parentFile.getPath()) ? null : LocalFileSystem.getInstance().refreshAndFindFileByIoFile(parentFile);
  if (parentVirtualFile == null) {
    throw new IOException(ProjectBundle.message("project.configuration.save.file.not.found", parentFile));
  }

  if (ApplicationManager.getApplication().isWriteAccessAllowed()) {
    return parentVirtualFile.createChildData(requestor, file.getName());
  }

  AccessToken token = WriteAction.start();
  try {
    return parentVirtualFile.createChildData(requestor, file.getName());
  }
  finally {
    token.finish();
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:29,代碼來源:StorageUtil.java

示例14: saveConversionResult

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
private static void saveConversionResult(ConversionContextImpl context) {
  final CachedConversionResult conversionResult = new CachedConversionResult();
  for (ConverterProvider provider : ConverterProvider.EP_NAME.getExtensions()) {
    conversionResult.myAppliedConverters.add(provider.getId());
  }
  conversionResult.myProjectFilesTimestamps = getProjectFilesMap(context);
  final File infoFile = getConversionInfoFile(context.getProjectFile());
  FileUtil.createParentDirs(infoFile);
  try {
    JDOMUtil.writeDocument(new Document(XmlSerializer.serialize(conversionResult)), infoFile, SystemProperties.getLineSeparator());
  }
  catch (IOException e) {
    LOG.info(e);
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:16,代碼來源:ConversionServiceImpl.java

示例15: downloadContentToFile

import com.intellij.openapi.util.io.FileUtil; //導入方法依賴的package包/類
public static void downloadContentToFile(@Nullable ProgressIndicator progress,
                                         @NotNull String url,
                                         @NotNull File outputFile) throws IOException {
  boolean parentDirExists = FileUtil.createParentDirs(outputFile);
  if (!parentDirExists) {
    throw new IOException("Parent dir of '" + outputFile.getAbsolutePath() + "' can not be created!");
  }
  OutputStream out = new FileOutputStream(outputFile);
  try {
    download(progress, url, out);
  }
  finally {
    out.close();
  }
}
 
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:16,代碼來源:DownloadUtil.java


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