Advertisement
Guest User

Untitled

a guest
Oct 21st, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 16.85 KB | None | 0 0
  1. package Classes;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.FileNotFoundException;
  5. import java.io.FileReader;
  6. import java.io.FileWriter;
  7. import java.io.IOException;
  8. import java.io.PrintWriter;
  9. import java.util.ArrayList;
  10. import java.util.List;
  11.  
  12. /*
  13. Classe para manipulacao de arquivos .txt, permitindo salvar objetos de Pessoa
  14. e tbm capturar os objetos que ja foram salvos no .txt.
  15.  
  16. os metodos que deverao ser chamados por fora sao:
  17. salvaTxt --> recebendo o caminho, ou nome do arquivo que sera salvo.
  18. E tbm o ArrayList de pessoas.
  19. */
  20.  
  21. public class ArquivoTxt {
  22.  
  23. public static void excluirTxt(String caminho, Integer codPessoa){
  24. List<Pessoa> lista_pessoas = new ArrayList<Pessoa>();
  25. lista_pessoas=capturaTxt(caminho);
  26. boolean falha_salvar=true;
  27. for(int i=0; i<lista_pessoas.size();i++){
  28. if(lista_pessoas.get(i).getCodPessoa()==codPessoa){
  29. lista_pessoas.remove(i);
  30. if(Write(caminho, lista_pessoas))
  31. System.out.println("Arquivo salvo com sucesso!");
  32. else
  33. System.out.println("Erro ao salvar o arquivo!");
  34. falha_salvar=false;
  35. break;
  36. }
  37. }
  38. if(falha_salvar){
  39. System.out.println("Tentativa de exclusao invalida!!\n");
  40. }
  41. }
  42.  
  43. public static void salvaTxt(String caminho, Pessoa pessoa){
  44. List<Pessoa> lista_pessoas = new ArrayList<Pessoa>();
  45. lista_pessoas = ArquivoTxt.capturaTxt(caminho);
  46. lista_pessoas.add(pessoa);
  47. if(Write(caminho, lista_pessoas))
  48. System.out.println("Arquivo salvo com sucesso!");
  49. else
  50. System.out.println("Erro ao salvar o arquivo!");
  51. }
  52.  
  53.  
  54. // Busca a String conteudo (que contem todas as informacoes das pessoas cadastradas) no metodo "read" e, logo em seguida,
  55. // processa o conteudo da string ja armazendando nos objetos "Pessoa", ao final do processamento a funcao retorna um List<Pessoa>
  56. public static List<Pessoa> capturaTxt(String caminho){
  57. String conteudo = read(caminho);
  58. List<Pessoa> lista_pessoas = new ArrayList<Pessoa>();
  59. int i=0;
  60. int index=0;
  61. while(i<1100){
  62. Pessoa pessoa = new Pessoa();
  63. try{
  64. pessoa.setNome(conteudo.split(";")[i]);
  65. i+=1;
  66. pessoa.setCodPessoa(Integer.parseInt(conteudo.split(";")[i]));
  67. i+=1;
  68. pessoa.setIdade(Integer.parseInt(conteudo.split(";")[i]));
  69. i+=1;
  70. pessoa.setCalvo(Boolean.parseBoolean(conteudo.split(";")[i]));
  71. i+=1;
  72. pessoa.setCabeloLongo(Boolean.parseBoolean(conteudo.split(";")[i]));
  73. i+=1;
  74. pessoa.setAlto(Boolean.parseBoolean(conteudo.split(";")[i]));
  75. i+=1;
  76. pessoa.setBarba(Boolean.parseBoolean(conteudo.split(";")[i]));
  77. i+=1;
  78. pessoa.setProfessor(Boolean.parseBoolean(conteudo.split(";")[i]));
  79. i+=1;
  80. pessoa.setMasculino(Boolean.parseBoolean(conteudo.split(";")[i]));
  81. i+=1;
  82. pessoa.setCabeloClaro(Boolean.parseBoolean(conteudo.split(";")[i]));
  83. i+=1;
  84. pessoa.setOlhoEscuro(Boolean.parseBoolean(conteudo.split(";")[i]));
  85. i+=1;
  86. pessoa.setMaior20(Boolean.parseBoolean(conteudo.split(";")[i]));
  87. i+=1;
  88.  
  89. lista_pessoas.add(index,pessoa);
  90. index+=1;
  91.  
  92. }catch(ArrayIndexOutOfBoundsException e){
  93. break;
  94. }
  95. }
  96. return lista_pessoas;
  97. }
  98.  
  99. public static List<Pessoa> capturaTxt_NEW(String caminho){
  100. String conteudo = read(caminho);
  101. List<Pessoa> lista_pessoas = new ArrayList<Pessoa>();
  102. int i=0;
  103. int index=0;
  104. while(i<1100){
  105. Pessoa pessoa = new Pessoa();
  106. try{
  107. pessoa.setNome(conteudo.split(";")[i]);
  108. i+=1;
  109. pessoa.setCodPessoa(Integer.parseInt(conteudo.split(";")[i]));
  110. i+=1;
  111. pessoa.setIdade(Integer.parseInt(conteudo.split(";")[i]));
  112. i+=1;
  113.  
  114. pessoa.setP_periodo(Boolean.parseBoolean(conteudo.split(";")[i]));
  115. i+=1;
  116. pessoa.setS_periodo(Boolean.parseBoolean(conteudo.split(";")[i]));
  117. i+=1;
  118. pessoa.setT_periodo(Boolean.parseBoolean(conteudo.split(";")[i]));
  119. i+=1;
  120.  
  121. pessoa.setMasculino(Boolean.parseBoolean(conteudo.split(";")[i]));
  122. i+=1;
  123.  
  124. pessoa.setCalvo(Boolean.parseBoolean(conteudo.split(";")[i]));
  125. i+=1;
  126. pessoa.setCabeloOndulado(Boolean.parseBoolean(conteudo.split(";")[i]));
  127. i+=1;
  128. pessoa.setCabeloCrespo(Boolean.parseBoolean(conteudo.split(";")[i]));
  129. i+=1;
  130. pessoa.setCabeloLiso(Boolean.parseBoolean(conteudo.split(";")[i]));
  131. i+=1;
  132. pessoa.setCabeloCurto(Boolean.parseBoolean(conteudo.split(";")[i]));
  133. i+=1;
  134. pessoa.setCabeloMedio(Boolean.parseBoolean(conteudo.split(";")[i]));
  135. i+=1;
  136. pessoa.setCabeloLongo(Boolean.parseBoolean(conteudo.split(";")[i]));
  137. i+=1;
  138. pessoa.setCabeloLoiro(Boolean.parseBoolean(conteudo.split(";")[i]));
  139. i+=1;
  140. pessoa.setCabeloPreto(Boolean.parseBoolean(conteudo.split(";")[i]));
  141. i+=1;
  142. pessoa.setCabeloCastanho(Boolean.parseBoolean(conteudo.split(";")[i]));
  143. i+=1;
  144. pessoa.setCabeloAvermelhado(Boolean.parseBoolean(conteudo.split(";")[i]));
  145. i+=1;
  146.  
  147. pessoa.setTomPeleClaro(Boolean.parseBoolean(conteudo.split(";")[i]));
  148. i+=1;
  149. pessoa.setTomPeleEscura(Boolean.parseBoolean(conteudo.split(";")[i]));
  150. i+=1;
  151.  
  152. pessoa.setTomOlhoVerde(Boolean.parseBoolean(conteudo.split(";")[i]));
  153. i+=1;
  154. pessoa.setTomOlhoAzul(Boolean.parseBoolean(conteudo.split(";")[i]));
  155. i+=1;
  156. pessoa.setTomOlhoCastanho(Boolean.parseBoolean(conteudo.split(";")[i]));
  157. i+=1;
  158.  
  159. pessoa.setUsaOculos(Boolean.parseBoolean(conteudo.split(";")[i]));
  160. i+=1;
  161.  
  162. pessoa.setAlto(Boolean.parseBoolean(conteudo.split(";")[i]));
  163. i+=1;
  164.  
  165. pessoa.setBarba(Boolean.parseBoolean(conteudo.split(";")[i]));
  166. i+=1;
  167.  
  168. pessoa.setUsaChapeu(Boolean.parseBoolean(conteudo.split(";")[i]));
  169. i+=1;
  170.  
  171. pessoa.setUsaRoupaSocial(Boolean.parseBoolean(conteudo.split(";")[i]));
  172. i+=1;
  173.  
  174. pessoa.setProfessor(Boolean.parseBoolean(conteudo.split(";")[i]));
  175. i+=1;
  176.  
  177. pessoa.setMaior20(Boolean.parseBoolean(conteudo.split(";")[i]));
  178. i+=1;
  179.  
  180. pessoa.setJogaLOL(Boolean.parseBoolean(conteudo.split(";")[i]));
  181. i+=1;
  182.  
  183. pessoa.setJogaCSGO(Boolean.parseBoolean(conteudo.split(";")[i]));
  184. i+=1;
  185.  
  186. pessoa.setGraduadoQuimica(Boolean.parseBoolean(conteudo.split(";")[i]));
  187. i+=1;
  188.  
  189. pessoa.seteDoExercito(Boolean.parseBoolean(conteudo.split(";")[i]));
  190. i+=1;
  191.  
  192. pessoa.setLecionaPOO(Boolean.parseBoolean(conteudo.split(";")[i]));
  193. i+=1;
  194.  
  195. pessoa.setLecionaAC(Boolean.parseBoolean(conteudo.split(";")[i]));
  196. i+=1;
  197.  
  198. pessoa.setLecionaMAC(Boolean.parseBoolean(conteudo.split(";")[i]));
  199. i+=1;
  200.  
  201. pessoa.setLecionaBD(Boolean.parseBoolean(conteudo.split(";")[i]));
  202. i+=1;
  203.  
  204. pessoa.setTrabalhaAviario(Boolean.parseBoolean(conteudo.split(";")[i]));
  205. i+=1;
  206.  
  207. pessoa.setTrabalhaMecanica(Boolean.parseBoolean(conteudo.split(";")[i]));
  208. i+=1;
  209.  
  210. pessoa.setTrabalhaBrafer(Boolean.parseBoolean(conteudo.split(";")[i]));
  211. i+=1;
  212.  
  213. pessoa.setTemPiercing(Boolean.parseBoolean(conteudo.split(";")[i]));
  214. i+=1;
  215.  
  216.  
  217. lista_pessoas.add(index,pessoa);
  218. index+=1;
  219.  
  220. }catch(ArrayIndexOutOfBoundsException e){
  221. break;
  222. }
  223. }
  224. return lista_pessoas;
  225. }
  226.  
  227.  
  228. // Le todo o conteudo do txt e armazena na String conteudo. A String "conteudo" será tratada no metodo capturaTxt
  229. private static String read(String caminho){
  230. String conteudo = "";
  231.  
  232. try{
  233. FileReader arq = new FileReader(caminho);
  234. BufferedReader lerArq = new BufferedReader(arq);
  235. String linha = "";
  236. try{
  237. linha = lerArq.readLine();
  238. while(linha!=null){
  239. conteudo += linha;
  240. linha = lerArq.readLine();
  241. }
  242. arq.close();
  243. return conteudo;
  244. } catch(IOException ex){
  245. System.out.println("Erro ao ler o arquivo");
  246. return "";
  247. }
  248. } catch(FileNotFoundException ex){
  249. System.out.println("Erro ao abrir o arquivo");
  250. return "";
  251. }
  252. }
  253.  
  254. // Salva uma lista de pessoas em txt
  255. private static boolean Write(String caminho, List<Pessoa> lista_pessoas){
  256. try{
  257. FileWriter arq = new FileWriter(caminho);
  258. PrintWriter gravarArq = new PrintWriter(arq);
  259. //gravarArq.println(texto);
  260. for(int i=0; i<lista_pessoas.size();i++){
  261. gravarArq.println(lista_pessoas.get(i).getNome()+";");
  262. gravarArq.println(lista_pessoas.get(i).getCodPessoa()+";");
  263. gravarArq.println(lista_pessoas.get(i).getIdade()+";");
  264. gravarArq.println(lista_pessoas.get(i).isCalvo()+";");
  265. gravarArq.println(lista_pessoas.get(i).isCabeloLongo()+";");
  266. gravarArq.println(lista_pessoas.get(i).isAlto()+";");
  267. gravarArq.println(lista_pessoas.get(i).isBarba()+";");
  268. gravarArq.println(lista_pessoas.get(i).isProfessor()+";");
  269. gravarArq.println(lista_pessoas.get(i).isMasculino()+";");
  270. gravarArq.println(lista_pessoas.get(i).isCabeloClaro()+";");
  271. gravarArq.println(lista_pessoas.get(i).isOlhoEscuro()+";");
  272. gravarArq.println(lista_pessoas.get(i).isMaior20()+";\r\n");
  273. }
  274. gravarArq.close();
  275. return true;
  276. } catch(IOException e){
  277. System.out.println(e.getMessage());
  278. return false;
  279. }
  280. }
  281.  
  282. private static boolean Write_NEW(String caminho, List<Pessoa> lista_pessoas){
  283. try{
  284. FileWriter arq = new FileWriter(caminho);
  285. PrintWriter gravarArq = new PrintWriter(arq);
  286. //gravarArq.println(texto);
  287. for(int i=0; i<lista_pessoas.size();i++){
  288. gravarArq.println(lista_pessoas.get(i).getNome()+";");
  289. gravarArq.println(lista_pessoas.get(i).getCodPessoa()+";");
  290. gravarArq.println(lista_pessoas.get(i).getIdade()+";");
  291.  
  292. gravarArq.println(lista_pessoas.get(i).isP_periodo()+";");
  293. gravarArq.println(lista_pessoas.get(i).isS_periodo()+";");
  294. gravarArq.println(lista_pessoas.get(i).isT_periodo()+";");
  295.  
  296. gravarArq.println(lista_pessoas.get(i).isMasculino()+";");
  297.  
  298. gravarArq.println(lista_pessoas.get(i).isCalvo()+";");
  299. gravarArq.println(lista_pessoas.get(i).isCabeloOndulado()+";");
  300. gravarArq.println(lista_pessoas.get(i).isCabeloCrespo()+";");
  301. gravarArq.println(lista_pessoas.get(i).isCabeloLiso()+";");
  302. gravarArq.println(lista_pessoas.get(i).isCabeloCurto()+";");
  303. gravarArq.println(lista_pessoas.get(i).isCabeloMedio()+";");
  304. gravarArq.println(lista_pessoas.get(i).isCabeloLongo()+";");
  305. gravarArq.println(lista_pessoas.get(i).isCabeloLoiro()+";");
  306. gravarArq.println(lista_pessoas.get(i).isCabeloPreto()+";");
  307. gravarArq.println(lista_pessoas.get(i).isCabeloCastanho()+";");
  308. gravarArq.println(lista_pessoas.get(i).isCabeloAvermelhado()+";");
  309.  
  310. gravarArq.println(lista_pessoas.get(i).isTomPeleClaro()+";");
  311. gravarArq.println(lista_pessoas.get(i).isTomPeleEscura()+";");
  312. gravarArq.println(lista_pessoas.get(i).isTomOlhoVerde()+";");
  313. gravarArq.println(lista_pessoas.get(i).isTomOlhoAzul()+";");
  314. gravarArq.println(lista_pessoas.get(i).isTomOlhoCastanho()+";");
  315. gravarArq.println(lista_pessoas.get(i).isUsaOculos()+";");
  316.  
  317. gravarArq.println(lista_pessoas.get(i).isAlto()+";");
  318.  
  319. gravarArq.println(lista_pessoas.get(i).isBarba()+";");
  320.  
  321. gravarArq.println(lista_pessoas.get(i).isUsaChapeu()+";");
  322.  
  323. gravarArq.println(lista_pessoas.get(i).isUsaRoupaSocial()+";");
  324.  
  325. gravarArq.println(lista_pessoas.get(i).isProfessor()+";");
  326.  
  327. gravarArq.println(lista_pessoas.get(i).isMaior20()+";");
  328.  
  329. gravarArq.println(lista_pessoas.get(i).isJogaLOL()+";");
  330.  
  331. gravarArq.println(lista_pessoas.get(i).isJogaCSGO()+";");
  332.  
  333. gravarArq.println(lista_pessoas.get(i).isGraduadoQuimica()+";");
  334.  
  335. gravarArq.println(lista_pessoas.get(i).iseDoExercito()+";");
  336.  
  337. gravarArq.println(lista_pessoas.get(i).isLecionaPOO()+";");
  338.  
  339. gravarArq.println(lista_pessoas.get(i).isLecionaAC()+";");
  340.  
  341. gravarArq.println(lista_pessoas.get(i).isLecionaMAC()+";");
  342.  
  343. gravarArq.println(lista_pessoas.get(i).isLecionaBD()+";");
  344.  
  345. gravarArq.println(lista_pessoas.get(i).isTrabalhaAviario()+";");
  346.  
  347. gravarArq.println(lista_pessoas.get(i).isTrabalhaMecanica()+";");
  348.  
  349. gravarArq.println(lista_pessoas.get(i).isTrabalhaBrafer()+";");
  350.  
  351. gravarArq.println(lista_pessoas.get(i).isTemPiercing()+";\r\n");
  352. }
  353. gravarArq.close();
  354. return true;
  355. } catch(IOException e){
  356. System.out.println(e.getMessage());
  357. return false;
  358. }
  359. }
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.  
  367. public static boolean writeAdm(){
  368. try{
  369. FileWriter arq = new FileWriter("adm_cadastrado.txt");
  370. PrintWriter gravarArq = new PrintWriter(arq);
  371. gravarArq.println("1");
  372. gravarArq.close();
  373. return true;
  374. } catch(IOException e){
  375. System.out.println(e.getMessage());
  376. return false;
  377. }
  378. }
  379.  
  380. public static String readAdm(){
  381. String conteudo = "";
  382.  
  383. try{
  384. FileReader arq = new FileReader("adm_cadastrado.txt");
  385. BufferedReader lerArq = new BufferedReader(arq);
  386. String linha = "";
  387. try{
  388. linha = lerArq.readLine();
  389. while(linha!=null){
  390. conteudo += linha;
  391. linha = lerArq.readLine();
  392. }
  393. arq.close();
  394. return conteudo;
  395. } catch(IOException ex){
  396. System.out.println("Erro ao ler o arquivo");
  397. return "";
  398. }
  399. } catch(FileNotFoundException ex){
  400. System.out.println("Erro ao abrir o arquivo");
  401. return "";
  402. }
  403. }
  404. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement