国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - java讀取ftp中TXT文件的案例

java讀取ftp中TXT文件的案例

2020-09-24 00:54zhang06105586 Java教程

這篇文章主要介紹了java讀取ftp中TXT文件的案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

最近在開發關于java讀取ftp中TXT文件,其中有些坑踩了一下,再次做個記錄

1、讀取文件時我會根據文件名稱去生成數據庫表,oracle數據庫對于表名的長度是有限制的,最多30個字符

2、對于多個文件的ftp的讀取,每次獲取文件后再次回去文件的流會為空,即在循環中多次根據ftp獲取文件的流

java讀取ftp中TXT文件的案例

當出現這種情況時,需要在循環時每次開啟和關閉ftp的鏈接即可解決,否則在第二次獲取的時候inputsteam為null

3、讀取txt文件時,如果文件中包含中文,進行讀取時可能會出現亂碼,這是可設置讀取的字符集為UTF-8,如果不行,再試試

GB2312

4、java讀取TXT文件:

?
1
2
3
4
5
InputStreamReader reader = new InputStreamReader(is, "GB2312");
BufferedReader br = new BufferedReader(reader);
String lineTxt = null; //每行數據
int rowNum = 0;
while ((lineTxt = br.readLine()) != null) {}

補充知識:Java實現從FTP獲取文件下載到本地,并讀取文件中的內容的成功方法

我就廢話不多說了,大家還是直接看代碼吧~

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
package com.aof.web.servlet;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStream;
import javax.jws.WebService;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
@WebService(endpointInterface="com.aof.web.servlet.QualityComplainServices")
public class QualityComplainServicesImpl implements QualityComplainServices {
 //ftp對象
  private FTPClient ftp;
  //需要連接到的ftp端的ip
  private String ip = "10.46.249.7";
  //連接端口,默認21
  private int port = 21;
  //要連接到的ftp端的名字
  private String name = "DKEDI";
  //要連接到的ftp端的對應得密碼
  private String pwd = "P@ssw0rd"
  
 //調用此方法,輸入對應得ip,端口,要連接到的ftp端的名字,要連接到的ftp端的對應得密碼。連接到ftp對象,并驗證登錄進入fto
  public boolean ftp1() {
    ftp = new FTPClient();
    try {
//     ftp.connect(ip, port);
     if(!ftp.isConnected()){
     ftp.connect(ip, port);
   }
      System.out.println(ftp.login(name, pwd));
//     ftp.setCharset(Charset.forName("UTF-8"));
      ftp.setControlEncoding("UTF-8");
      return true;
    } catch (IOException e) {
      e.printStackTrace();
      return true;
    }
    
  }
  
  public void disconnect() throws Exception {
 if (ftp.isConnected()) {
  ftp.disconnect();
 }
 }
  
 // 下載文件到本地
 public boolean download(FTPFile file) throws Exception {
  boolean result = true;
  // 本地文件路徑
  File f = new File("E:\\crmFiles\\");
  if (!f.exists()) {
  f.getParentFile().mkdirs();
  }
  long lRemoteSize = file.getSize();
  try {// 下載過的不在下載了
  OutputStream out = new FileOutputStream(f);
  if (f.length() >= lRemoteSize) {
   System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~本地已經存在,下載中止");
   out.flush();
   out.close();
  }
  boolean iss = ftp.retrieveFile(file.getName(), out);
  System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~下載成功\r\n");
  out.close();
  } catch (Exception ex) {
  ex.printStackTrace();
  System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~下載失敗\r\n");
  return false;
  }
  return result;
 }
 
 private InputStreamReader read;
 private BufferedReader reader;
 
 private String preRead(String filepath) throws Exception {
 File file = new File(filepath);
 String ordertype = null;
 if (file.isFile() && file.exists()) {
  try {
  read = new InputStreamReader(new FileInputStream(file), "GBK");
  reader = new BufferedReader(read);
  StringBuffer FileContent = new StringBuffer();
  String temp = null;
  while ((temp = reader.readLine()) != null) {
   FileContent.append(temp);
  }
  System.out.println("訂單內容為------------------>>>>> "+FileContent+" <<<<<------------------");
  } catch (FileNotFoundException e) {
  System.out.println("!!?。。。。。。。。。。。。。?!沒有找到合適的訂單信息!?。。。。。。。。。。。。?!");
  e.printStackTrace();
  } finally {
  reader.close();
  read.close();
//  file.delete();
  }
 }
 return ordertype;
 }
  
  public void gmRead(String remote) throws Exception {
   boolean downloadResult = false;
 try {
  ftp.changeWorkingDirectory(remote);
  System.out.println("遠程路徑為*************************"+remote);
  FTPFile[] files = ftp.listFiles(remote); // 通過路徑得到文件
  System.out.println("文件數量為*************************"+files.length);
  for (int i = 0; i < files.length; i++) {
  FTPFile file = files[i];
  if (file.isFile()) {
   downloadResult = this.download(file);// 下載文件 到本地讀取路徑
   if (downloadResult) {
   String ordertype = this.preRead("E:\\crmFiles\\");
   }
   /*//讀取文件內容,將內容存數據庫
   InputStreamReader isr = new InputStreamReader(new FileInputStream(file), "utf-8");
   BufferedReader br = new BufferedReader(isr);
   String lineTxt = null;
   while ((lineTxt = br.readLine()) != null) {
   lineTxt+=lineTxt;
   }
   System.out.println(lineTxt);
   br.close();*/
  }else{
   System.out.println("************* 文件不存在 ************");
  }
  }
 } catch (Exception e) {
  e.printStackTrace();
 }
 }
  
 @Override
 public String threeDAndEightDReports(String orderNum, String FTPUrl, String FileType) {
 //抱怨單號、FTP地址、3D/8D文件類型
 System.out.println("1-------------"+orderNum);
 System.out.println("2-------------"+FTPUrl);
 System.out.println("3-------------"+FileType);
 if(null != orderNum && null != FTPUrl && null != FileType){
  //連接FTP
  boolean flag = this.ftp1();
  if(flag){
  try {
   //獲取文件、解析文件內容,進庫操作
   this.gmRead(FTPUrl);
   // 關閉連接
   this.disconnect();
  } catch (Exception e) {
   e.printStackTrace();
  }
  }else{
  System.out.println("?。。。。。。。。。。。。。。。?!FTP連接失?。。。。。。。。。。。。。。。。。?quot;);
  }
  
  return "success";
 }else{
  return "fail";
 }
 }
 
 public static void main(String[] args) {
 QualityComplainServicesImpl q = new QualityComplainServicesImpl();
 q.threeDAndEightDReports("001","/CRMINTERFACE","3D");
 }
}

以上這篇java讀取ftp中TXT文件的案例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/zhang06105586/article/details/105410803

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 免费大片黄在线观看 | 免费一区二区 | 可以看av的网站 | 午夜精品久久久久久久久 | 九九热精品视频在线免费观看 | 日韩欧美一二三区 | 国产精品剧情一区二区三区 | 激情国产 | 天天天天干 | 成人3d动漫一区二区三区91 | 一区二区三区精品 | 黑人草逼视频 | 国产综合久久久 | 日韩av在线一区 | 国产亚洲欧美另类一区二区三区 | 精品一区二区三区四区五区 | 日韩二区三区 | 久久丁香视频 | 91麻豆精品国产91久久久更新时间 | 欧美一区二区三区男人的天堂 | 性天堂 | 久久精品在线 | 国产片av| 四虎影院网 | 97碰碰碰免费公开在线视频 | 亚洲国产中文字幕 | 无码日韩精品一区二区免费 | 91精品国产一区二区 | 夜久久 | 久久久久久网站 | 久久天堂 | 四虎影视最新免费版 | 嫩草网址 | 黄在线看v | 欧美浮力| 免费观看黄色 | 久久中文字幕一区 | 欧美电影在线观看网站 | 欧美伦理一区二区 | 99精品欧美一区二区三区综合在线 | 亚洲精品久久久一区二区三区 |