- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章java文件操作工具类分享(file文件工具类)由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
。
/** * * @author IBM * */ 。
public class FileUtil { public static String dirSplit = "\\";//linux windows /** * save file accroding to physical directory infomation * * @param physicalDir * physical directory * @param fname * file name of destination * @param istream * input stream of destination file * @return */ 。
public static boolean SaveFileByPhysicalDir(String physicalPath, InputStream istream) { boolean flag = false; try { OutputStream os = new FileOutputStream(physicalPath); int readBytes = 0; byte buffer[] = new byte[8192]; while ((readBytes = istream.read(buffer, 0, 8192)) != -1) { os.write(buffer, 0, readBytes); } os.close(); flag = true; } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } return flag; } public static boolean CreateDirectory(String dir){ File f = new File(dir); if (!f.exists()) { f.mkdirs(); } return true; } public static void saveAsFileOutputStream(String physicalPath,String content) { File file = new File(physicalPath); boolean b = file.getParentFile().isDirectory(); if(!b){ File tem = new File(file.getParent()); // tem.getParentFile().setWritable(true); tem.mkdirs();// 创建目录 } //Log.info(file.getParent()+";"+file.getParentFile().isDirectory()); FileOutputStream foutput =null; try { foutput = new FileOutputStream(physicalPath); foutput.write(content.getBytes("UTF-8")); //foutput.write(content.getBytes()); }catch(IOException ex) { ex.printStackTrace(); throw new RuntimeException(ex); }finally{ try { foutput.flush(); foutput.close(); }catch(IOException ex){ ex.printStackTrace(); throw new RuntimeException(ex); } } //Log.info("文件保存成功:"+ physicalPath); } 。
/** * COPY文件 * @param srcFile String * @param desFile String * @return boolean */ public boolean copyToFile(String srcFile, String desFile) { File scrfile = new File(srcFile); if (scrfile.isFile() == true) { int length; FileInputStream fis = null; try { fis = new FileInputStream(scrfile); } catch (FileNotFoundException ex) { ex.printStackTrace(); } File desfile = new File(desFile),
FileOutputStream fos = null; try { fos = new FileOutputStream(desfile, false); } catch (FileNotFoundException ex) { ex.printStackTrace(); } desfile = null; length = (int) scrfile.length(); byte[] b = new byte[length]; try { fis.read(b); fis.close(); fos.write(b); fos.close(); } catch (IOException e) { e.printStackTrace(); } } else { scrfile = null; return false; } scrfile = null; return true; } 。
/** * COPY文件夹 * @param sourceDir String * @param destDir String * @return boolean */ public boolean copyDir(String sourceDir, String destDir) { File sourceFile = new File(sourceDir); String tempSource; String tempDest; String fileName; File[] files = sourceFile.listFiles(); for (int i = 0; i < files.length; i++) { fileName = files[i].getName(); tempSource = sourceDir + "/" + fileName; tempDest = destDir + "/" + fileName; if (files[i].isFile()) { copyToFile(tempSource, tempDest); } else { copyDir(tempSource, tempDest); } } sourceFile = null; return true; } 。
/** * 删除指定目录及其中的所有内容。 * @param dir 要删除的目录 * @return 删除成功时返回true,否则返回false。 */ public boolean deleteDirectory(File dir) { File[] entries = dir.listFiles(); int sz = entries.length; for (int i = 0; i < sz; i++) { if (entries[i].isDirectory()) { if (!deleteDirectory(entries[i])) { return false; } } else { if (!entries[i].delete()) { return false; } } } if (!dir.delete()) { return false; } return true; } /** * File exist check * * @param sFileName File Name * @return boolean true - exist<br> * false - not exist */ public static boolean checkExist(String sFileName) { boolean result = false; try { File f = new File(sFileName); //if (f.exists() && f.isFile() && f.canRead()) { if (f.exists() && f.isFile()) { result = true; } else { result = false; } } catch (Exception e) { result = false; } /* return */ return result; } /** * Get File Size * * @param sFileName File Name * @return long File's size(byte) when File not exist return -1 */ public static long getSize(String sFileName) { long lSize = 0; try { File f = new File(sFileName); //exist if (f.exists()) { if (f.isFile() && f.canRead()) { lSize = f.length(); } else { lSize = -1; } //not exist } else { lSize = 0; } } catch (Exception e) { lSize = -1; } /* return */ return lSize; } /** * File Delete * * @param sFileName File Nmae * @return boolean true - Delete Success<br> * false - Delete Fail */ public static boolean deleteFromName(String sFileName) { boolean bReturn = true; try { File oFile = new File(sFileName); //exist if (oFile.exists()) { //Delete File boolean bResult = oFile.delete(); //Delete Fail if (bResult == false) { bReturn = false; } //not exist } else { } } catch (Exception e) { bReturn = false; } //return return bReturn; } /** * File Unzip * * @param sToPath Unzip Directory path * @param sZipFile Unzip File Name */ @SuppressWarnings("rawtypes") public static void releaseZip(String sToPath, String sZipFile) throws Exception { if (null == sToPath ||("").equals(sToPath.trim())) { File objZipFile = new File(sZipFile); sToPath = objZipFile.getParent(); } ZipFile zfile = new ZipFile(sZipFile); Enumeration zList = zfile.entries(); ZipEntry ze = null; byte[] buf = new byte[1024]; while (zList.hasMoreElements()) { 。
ze = (ZipEntry) zList.nextElement(); if (ze.isDirectory()) { continue; } OutputStream os = new BufferedOutputStream( new FileOutputStream(getRealFileName(sToPath, ze.getName()))); InputStream is = new BufferedInputStream(zfile.getInputStream(ze)); int readLen = 0; while ((readLen = is.read(buf, 0, 1024)) != -1) { os.write(buf, 0, readLen); } is.close(); os.close(); } zfile.close(); } /** * getRealFileName * * @param baseDir Root Directory * @param absFileName absolute Directory File Name * @return java.io.File Return file */ @SuppressWarnings({ "rawtypes", "unchecked" }) private static File getRealFileName(String baseDir, String absFileName) throws Exception { File ret = null,
List dirs = new ArrayList(); StringTokenizer st = new StringTokenizer(absFileName, System.getProperty("file.separator")); while (st.hasMoreTokens()) { dirs.add(st.nextToken()); } 。
ret = new File(baseDir); if (dirs.size() > 1) { for (int i = 0; i < dirs.size() - 1; i++) { ret = new File(ret, (String) dirs.get(i)); } } if (!ret.exists()) { ret.mkdirs(); } ret = new File(ret, (String) dirs.get(dirs.size() - 1)); return ret; } 。
/** * copyFile * * @param srcFile Source File * @param targetFile Target file */ @SuppressWarnings("resource") static public void copyFile(String srcFile , String targetFile) throws IOException { FileInputStream reader = new FileInputStream(srcFile); FileOutputStream writer = new FileOutputStream(targetFile),
byte[] buffer = new byte [4096]; int len,
try { reader = new FileInputStream(srcFile); writer = new FileOutputStream(targetFile); while((len = reader.read(buffer)) > 0) { writer.write(buffer , 0 , len); } } catch(IOException e) { throw e; } finally { if (writer != null)writer.close(); if (reader != null)reader.close(); } } 。
/** * renameFile * * @param srcFile Source File * @param targetFile Target file */ static public void renameFile(String srcFile , String targetFile) throws IOException { try { copyFile(srcFile,targetFile); deleteFromName(srcFile); } catch(IOException e){ throw e; } } 。
public static void write(String tivoliMsg,String logFileName) { try{ byte[] bMsg = tivoliMsg.getBytes(); FileOutputStream fOut = new FileOutputStream(logFileName, true); fOut.write(bMsg); fOut.close(); } catch(IOException e){ //throw the exception } 。
} /** * This method is used to log the messages with timestamp,error code and the method details * @param errorCd String * @param className String * @param methodName String * @param msg String */ public static void writeLog(String logFile, String batchId, String exceptionInfo) { DateFormat df = DateFormat.getDateTimeInstance(DateFormat.DEFAULT, DateFormat.DEFAULT, Locale.JAPANESE); Object args[] = {df.format(new Date()), batchId, exceptionInfo}; String fmtMsg = MessageFormat.format("{0} : {1} : {2}", args); try { File logfile = new File(logFile); if(!logfile.exists()) { logfile.createNewFile(); } FileWriter fw = new FileWriter(logFile, true); fw.write(fmtMsg); fw.write(System.getProperty("line.separator")),
fw.flush(); fw.close(),
} catch(Exception e) { } } public static String readTextFile(String realPath) throws Exception { File file = new File(realPath); if (!file.exists()){ System.out.println("File not exist!"); return null; } BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(realPath),"UTF-8")); String temp = ""; String txt=""; while((temp = br.readLine()) != null){ txt+=temp; } br.close(); return txt; } } 。
。
最后此篇关于java文件操作工具类分享(file文件工具类)的文章就讲到这里了,如果你想了解更多关于java文件操作工具类分享(file文件工具类)的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我正在努力做到这一点 在我的操作中从数据库获取对象列表(确定) 在 JSP 上打印(确定) 此列表作为 JSP 中的可编辑表出现。我想修改然后将其提交回同一操作以将其保存在我的数据库中(失败。当我使用
我有以下形式的 Linq to Entities 查询: var x = from a in SomeData where ... some conditions ... select
我有以下查询。 var query = Repository.Query() .Where(p => !p.IsDeleted && p.Article.ArticleSections.Cou
我正在编写一个应用程序包,其中包含一个主类,其中主方法与GUI类分开,GUI类包含一个带有jtabbedpane的jframe,它有两个选项卡,第一个选项卡包含一个jtable,称为jtable1,第
以下代码产生错误 The nested query is not supported. Operation1='Case' Operation2='Collect' 问题是我做错了什么?我该如何解决?
我已经为 HA redis 集群(2 个副本、1 个主节点、3 个哨兵)设置了本地 docker 环境。只有哨兵暴露端口(10021、10022、10023)。 我使用的是 stackexchange
我正在 Desk.com 中构建一个“集成 URL”,它使用 Shopify Liquid 模板过滤器语法。对于开始日期为 7 天前而结束日期为现在的查询,此 URL 需要包含“开始日期”和“结束日期
你一定想过。然而情况却不理想,python中只能使用类似于 i++/i--等操作。 python中的自增操作 下面代码几乎是所有程序员在python中进行自增(减)操作的常用
我需要在每个使用 github 操作的手动构建中显示分支。例如:https://gyazo.com/2131bf83b0df1e2157480e5be842d4fb 我应该显示分支而不是一个。 最佳答
我有一个关于 Perl qr 运算符的问题: #!/usr/bin/perl -w &mysplit("a:b:c", /:/); sub mysplit { my($str, $patt
我已经使用 ArgoUML 创建了一个 ERD(实体关系图),我希望在一个类中创建两个操作,它们都具有 void 返回类型。但是,我只能创建一个返回 void 类型的操作。 例如: 我能够将 book
Github 操作仍处于测试阶段并且很新,但我希望有人可以提供帮助。我认为可以在主分支和拉取请求上运行 github 操作,如下所示: on: pull_request push: b
我正在尝试创建一个 Twilio 工作流来调用电话并记录用户所说的内容。为此,我正在使用 Record,但我不确定要在 action 参数中放置什么。 尽管我知道 Twilio 会发送有关调用该 UR
我不确定这是否可行,但值得一试。我正在使用模板缓冲区来减少使用此算法的延迟渲染器中光体积的过度绘制(当相机位于体积之外时): 使用廉价的着色器,将深度测试设置为 LEQUAL 绘制背面,将它们标记在模
有没有聪明的方法来复制 和 重命名 文件通过 GitHub 操作? 我想将一些自述文件复制到 /docs文件夹(:= 同一个 repo,不是远程的!),它们将根据它们的 frontmatter 重命名
我有一个 .csv 文件,其中第一列包含用户名。它们采用 FirstName LastName 的形式。我想获取 FirstName 并将 LastName 的第一个字符添加到它上面,然后删除空格。然
Sitecore 根据 Sitecore 树中定义的项目名称生成 URL, http://samplewebsite/Pages/Sample Page 但我们的客户有兴趣降低所有 URL(页面/示例
我正在尝试进行一些计算,但是一旦我输入金额,它就会完成。我只是希望通过单击按钮而不是自动发生这种情况。 到目前为止我做了什么: Angular JS - programming-fr
我的公司创建了一种在环境之间移动文件的复杂方法,现在我们希望将某些构建的 JS 文件(已转换和缩小)从一个 github 存储库移动到另一个。使用 github 操作可以实现这一点吗? 最佳答案 最简
在我的代码中,我创建了一个 JSONArray 对象。并向 JSONArray 对象添加了两个 JSONObject。我使用的是 json-simple-1.1.jar。我的代码是 package j
我是一名优秀的程序员,十分优秀!