powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Перемещение файлов
3 сообщений из 3, страница 1 из 1
Перемещение файлов
    #34729443
pirat2006
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите новичку разобраться. Нужно загрузить данные из текстовых файлов в таблички, после чего занести некоторую информацию о файлах в таблицу истории и переместить файлы в директорию для архивов. Проблема в том, что первый файл перемещается нормально, а второй никак не хочет. Подскажите в чем проблема...

import java.io.*;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import java.util.GregorianCalendar;


public class pr_first_load {

public static void main(String[] args) throws IOException, SQLException {
String server="server";
String user="user";
String password="password";

String enc; // переменная для кодировки файлов
enc = "";
String person_dir; // указание пути для файлов первоначальной загрузки в таблицу person
person_dir = "";
String p_adres_dir; // указание пути для файлов первоначальной загрузки в таблицу p_adres_dir
p_adres_dir = "";
String arhive_dir; // указание пути для архива
arhive_dir = "";
String[] data; // переменная для разбора отдельной строки файла
int iline; // счетчик для определения количества загруженных записей


Connection con;
con = null;
try {
if (insideOracle()) {
con = DriverManager.getConnection("jdbc:default:connection:");
} else {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url = "jdbc:odbc:"+server;
con = DriverManager.getConnection(url, user, password);
}
}
catch (java.lang.Exception ex) {
ex.printStackTrace ();
}

Statement stmt = con.createStatement();

ResultSet rs = stmt.executeQuery ("select (select value from pr_config where param='encoding') as encoding," +
"(select value from pr_config where param='person_dir') as person_dir, " +
"(select value from pr_config where param='p_adres_dir') as p_adres_dir, " +
"(select value from pr_config where param='arhive_dir') as arhive_dir " +
"from dual");
while(rs.next()) {
enc = rs.getString("encoding");
person_dir = rs.getString("person_dir");
p_adres_dir = rs.getString("p_adres_dir");
arhive_dir = rs.getString("arhive_dir");
};
rs.close();

stmt.close();

// загрузка в таблицу person
File path = new File(person_dir);
String[] list = path.list();
String element;

for(int i = 0; i < list.length; i++)
{
element = list ;



GregorianCalendar gcalendar = new GregorianCalendar();
BufferedReader in=new BufferedReader(new InputStreamReader(new FileInputStream(person_dir+element),enc));
String line=null;
iline = 0;
while((line=in.readLine())!=null){
data = line.split("\\|\\*\\|");

stmt = con.createStatement();
stmt.executeUpdate("insert into person(id,fam,imj,otch,y_rojd,m_rojd,d_rojd,dt_izm) " +
"values('"+data[0]+"','"+data[1]+"','"+data[2]+"','"+data[3]+"','"+data[4]+"','"+data[5]+"','"+data[6]+"',to_date('"+(gcalendar.get(GregorianCalendar.DATE))+"-"+((gcalendar.get(GregorianCalendar.MONTH))+1)+"-"+(gcalendar.get(GregorianCalendar.YEAR))+"','dd-mm-yyyy'))");
stmt.close();
iline = iline + 1;
};
// запись в таблицу истории
stmt = con.createStatement();
stmt.executeUpdate("insert into pr_history_fload(file_name,table_name,quantity,error_message,date_load,status) " +
"values('"+element+"','person','"+iline+"','load',to_date('"+(gcalendar.get(GregorianCalendar.DATE))+"-"+((gcalendar.get(GregorianCalendar.MONTH))+1)+"-"+(gcalendar.get(GregorianCalendar.YEAR))+"','dd-mm-yyyy'),1)");
stmt.close();
in.close();

// перемещение файла в архиную папку
String src = person_dir+element;
String dst = arhive_dir+element;


File file1 = new File(src);
File ff1 = new File(dst);
file1.renameTo(ff1);

};

// загрузка в таблицу p_adres
path = new File(p_adres_dir);
list = path.list();

for(int i = 0; i < list.length; i++)
{
element = list;

GregorianCalendar gcalendar = new GregorianCalendar();
BufferedReader in=new BufferedReader(new InputStreamReader(new FileInputStream(p_adres_dir+element),enc));
//StringBuffer text=new StringBuffer();
String line=null;
iline = 0;
while((line=in.readLine())!=null){
data = line.split("\\|\\*\\|");

stmt = con.createStatement();
stmt.executeUpdate("insert into p_adres(id,n_adr,ps,ibd_arx,dt_izm) " +
"values('"+data[0]+"','"+data[1]+"','"+data[2]+"','"+data[3]+"',to_date('"+(gcalendar.get(GregorianCalendar.DATE))+"-"+((gcalendar.get(GregorianCalendar.MONTH))+1)+"-"+(gcalendar.get(GregorianCalendar.YEAR))+"','dd-mm-yyyy'))");
stmt.close();
iline = iline + 1;
};
// запись в таблицу истории
stmt = con.createStatement();
stmt.executeUpdate("insert into pr_history_fload(file_name,table_name,quantity,error_message,date_load,status) " +
"values('"+element+"','p_adres','"+iline+"','load',to_date('"+(gcalendar.get(GregorianCalendar.DATE))+"-"+((gcalendar.get(GregorianCalendar.MONTH))+1)+"-"+(gcalendar.get(GregorianCalendar.YEAR))+"','dd-mm-yyyy'),1)");
stmt.close();
in.close();

String src = p_adres_dir+element;
String dst = arhive_dir+element;

File file2 = new File(src);
File ff2 = new File(dst);
file2.renameTo(ff2);
};
}

private static boolean insideOracle() {
// If oracle.server.version is non null, we''re running in the database
String ver = System.getProperty("oracle.server.version");
return (ver != null && !ver.equals(""));
}
}
...
Рейтинг: 0 / 0
Перемещение файлов
    #34729478
Фотография Хрюхрюшкин.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что это такое?
Код: plaintext
1.
2.
3.
 for ( int  i =  0 ; i < list.length; i++)
{
element = list;

P.S. Пользуйтесь тегом SRC и нормальным редактором.
...
Рейтинг: 0 / 0
Перемещение файлов
    #34729512
pirat2006
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
извиняюсь. должно было быть так

Код: plaintext
1.
2.
3.
 for ( int  i =  0 ; i < list.length; i++)
{
element = list[i];

ошибку нашел, просто какой-то процесс работал с файлом и не разрешал его перемещать :)

Про SRC учту, спасибо
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Перемещение файлов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]