Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Dacia 1316 cu 6 usi ...

Frecventa modificata radio

Un nou pericol pt batrani

Ar trebuii sa vindem imobiliarele...
 Dupa renuntarea la aparat dentar

pelerinaj in Balcik

Noul format Jpegli iși propu...

Dade, dade
 Probleme accesare nr test telefon

Parola la lock screen

Deparazitare externa pisici fara ...

Seriale turcesti/coreene online H...
 Merita un Termostat Smart pentru ...

Sfat achizitie MTB Devron Riddle

Problema mare cu parintii= nervi ...

switch microtik
 

Copiere linii cu data curenta dintr-un fisier in altul

- - - - -
  • Please log in to reply
10 replies to this topic

#1
eugen55ro

eugen55ro

    Junior Member

  • Grup: Members
  • Posts: 41
  • Înscris: 18.07.2005
Salutare,

Va rog daca imi puteti da o idee pentru urmatoarea problema:

Am nevoie sa fac un programel in vb6 care sa-mi citeasca un log si sa copieze din el in alt fisier (nou)  doar inregistrarile din data curenta.
Logul arata de forma:

[2011.03.21 20:28:31][3124:1][INF] Start.
[2011.03.21 20:28:48][3124:1][INF] Movements_Orders_Summary
[2011.03.21 20:29:02][3124:1][INF] Movements_Orders_Draf
[2011.03.21 20:29:12][3124:1][INF] Order OnNewOrders.
[2011.03.21 20:30:26][3124:1][INF] Order OnSave.
[2011.03.21 20:30:29][3124:1][INF] Order OnToReady.
[2011.03.21 20:30:36][3124:1][INF] Movements_Orders_Ready
[2011.03.21 20:30:41][3124:1][INF] Order OnOrderPrint.
[2011.03.21 20:30:41][3124:1][INF] Movements_Orders_Report
[2011.03.21 20:31:43][3124:1][INF] Movements_StockIn_Summary
[2011.03.21 20:32:11][3124:1][INF] NewStockIn
[2011.03.21 20:32:24][3124:1][INF] StockIn OnNewStockIn.
[2011.03.21 20:32:56][3124:1][INF] StockIn OnSave
[2011.03.21 20:33:33][3124:1][INF] Movements_StockIn_Created
[2011.03.21 20:36:38][3124:1][INF] StockIn OnPrint
[2011.03.21 20:36:38][3124:1][INF] Movements_StockIn_Report
[2011.03.21 21:38:01][3124:1][INF] Exit.
[2011.03.22 20:28:31][3124:1][INF] Start.
[2011.03.22 20:28:48][3124:1][INF] Movements_Orders_Summary
[2011.03.22 20:29:02][3124:1][INF] Movements_Orders_Draf
[2011.03.22 20:29:12][3124:1][INF] Order OnNewOrders.
[2011.03.22 20:30:26][3124:1][INF] Order OnSave.
[2011.03.22 20:30:29][3124:1][INF] Order OnToReady.
[2011.03.22 20:30:36][3124:1][INF] Movements_Orders_Ready
[2011.03.22 20:30:41][3124:1][INF] Order OnOrderPrint.
[2011.03.22 20:30:41][3124:1][INF] Movements_Orders_Report
[2011.03.22 20:31:43][3124:1][INF] Movements_StockIn_Summary
[2011.03.22 20:32:11][3124:1][INF] NewStockIn
[2011.03.22 20:32:24][3124:1][INF] StockIn OnNewStockIn.
[2011.03.22 20:32:56][3124:1][INF] StockIn OnSave
[2011.03.22 20:33:33][3124:1][INF] Movements_StockIn_Created
[2011.03.22 20:36:38][3124:1][INF] StockIn OnPrint
[2011.03.22 20:36:38][3124:1][INF] Movements_StockIn_Report
[2011.03.22 21:38:01][3124:1][INF] Exit.

Multumesc anticipat

#2
neagu_laurentiu

neagu_laurentiu

    Guru Member

  • Grup: Senior Members
  • Posts: 40,604
  • Înscris: 30.07.2003
- deschizi fisierul cu log-urile;
- creezi fisierul destinatie;
- citesti linie cu linie din cel cu log-urile;
- data e situata intre caracterul 2 si 11, extragi acest subsir si-l transformi la tipul data;
- compari cu data sistemului iar daca sunt egale scrii linia in fisierul destinatie;
- sau transformi data sistemului in string si compari cu subsirul - alege tu o varianta;
- inchizi ambele fisiere.

Ce nu stii sa faci din pasii de mai sus ?

Edited by neagu_laurentiu, 23 March 2011 - 13:21.


#3
eugen55ro

eugen55ro

    Junior Member

  • Grup: Members
  • Posts: 41
  • Înscris: 18.07.2005
sincer stiu sa deschid si sa creez.. dar ceilalti pasi nu

Dim    a    As Integer

FileNameOld = "C:\program_log.log"
a = FreeFile
Open FileNameOld For Binary Access Read As #a
Close #a


Open "C:\newlog.log" For Append As #b
Print #b, "ceva"
Close #b

#4
neagu_laurentiu

neagu_laurentiu

    Guru Member

  • Grup: Senior Members
  • Posts: 40,604
  • Înscris: 30.07.2003
Trebuie sa inveti sa poti deslusi documentatia (care e destul de simpla):
http://msdn.microsof.....28VS.60).aspx
http://msdn.microsof.....28VS.60).aspx
http://msdn.microsof.....28VS.60).aspx
...

#5
eugen55ro

eugen55ro

    Junior Member

  • Grup: Members
  • Posts: 41
  • Înscris: 18.07.2005
nu ai un link ceva si pentru partea de comparat?
multumesc

#6
neagu_laurentiu

neagu_laurentiu

    Guru Member

  • Grup: Senior Members
  • Posts: 40,604
  • Înscris: 30.07.2003
Tot acolo ai ce vrei:
http://msdn.microsof.....28VS.60).aspx

#7
eugen55ro

eugen55ro

    Junior Member

  • Grup: Members
  • Posts: 41
  • Înscris: 18.07.2005
sper sa ma descurc...

multumesc

#8
bgMiKe

bgMiKe

    Junior Member

  • Grup: Members
  • Posts: 149
  • Înscris: 28.01.2006
1. acces la fisier (deschidere, inchidere)
Nu vad ce treaba ai cu accesul binar la fisier (Open FileNameOld For Binary Access Read As #a asta face).
Incearca FileSystemObject si TextStream.
Foarte simplu de folosit, intuitive apelurile si exemple + explicatii disponibile din plin pe net.

2. citirea
Poti sa citesti linie cu linie (recomandat) si sa compari "coloana" data_ora cu data curenta

strAstazi0 = Format$(now, "yyyy.mm.dd") & " 00:00:01"
strAstazi1 = Format$(now, "yyyy.mm.dd") & " 23:59:59"
cat timp exista linii
	citeste continut linie
	daca substr(continut_linie, 2, 19) intre strAstazi0 si strAstazi1 atunci
		salveaza linia 
	end
repeta


#9
eugen55ro

eugen55ro

    Junior Member

  • Grup: Members
  • Posts: 41
  • Înscris: 18.07.2005
am reusit sa citesc linie cu linie si sa scriu in alt fisier

dar nu reusesc sa fac diferenta dupa data...


Private Sub Form_Load()

Open "C:\xampp\htdocs\test\log\oooo\1234567\test.log" For Append As #1
Close #1

Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim FSO, MyFile, FileName, TextLine

Set FSO = CreateObject("Scripting.FileSystemObject")

FileName = "C:\xampp\htdocs\test\log\oooo\1234567\1234567_GVR.BackOffice.Movements.log"
FileNameNew = "C:\xampp\htdocs\test\log\oooo\1234567\test.log"

Set MyFile = FSO.OpenTextFile(FileName, ForReading)

Do While MyFile.AtEndOfStream <> True
	TextLine = MyFile.ReadLine
	   
strAstazi0 = Format$(Now, "yyyy.mm.dd") & " 00:00:01"
strAstazi1 = Format$(Now, "yyyy.mm.dd") & " 23:59:59"
 

aici ar trebui sa dac diferenta dupa data....


	Set fs = CreateObject("Scripting.FileSystemObject")
	Set f = fs.OpenTextFile("C:\xampp\htdocs\test\log\oooo\1234567\test.log", ForAppending, TristateFalse)
	f.Write TextLine & vbCrLf
	f.Close
		  
  Loop

MyFile.Close
End
End Sub

de patru ore ma chinui si nu imi iese...  :cursing:

#10
Sorin Nedelcu

Sorin Nedelcu

    Member

  • Grup: Members
  • Posts: 638
  • Înscris: 15.10.2006
Foloseste DateDif

#11
eugen55ro

eugen55ro

    Junior Member

  • Grup: Members
  • Posts: 41
  • Înscris: 18.07.2005
am reusit

multumesc

Anunturi

Chirurgia spinală minim invazivă Chirurgia spinală minim invazivă

Chirurgia spinală minim invazivă oferă pacienților oportunitatea unui tratament eficient, permițându-le o recuperare ultra rapidă și nu în ultimul rând minimizând leziunile induse chirurgical.

Echipa noastră utilizează un spectru larg de tehnici minim invazive, din care enumerăm câteva: endoscopia cu variantele ei (transnazală, transtoracică, transmusculară, etc), microscopul operator, abordurile trans tubulare și nu în ultimul rând infiltrațiile la toate nivelurile coloanei vertebrale.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate