Hej igen! Prova och gör en function som du kan anropa med de båda filnamnen, för och avgöra om det är samma person.Förhindra att annan fil laddas in
Nedanstående kod visar hur jag i en annan Form lägger in en textfil (filändelse .bok) plus bild i först A)
Ex. heter textfilen Göran.bok och nästa Bosse.bok.... etc ett antal filer som läses in i en Filelistbox och sedan via ett klick på någon visas i Text2 textbox.
I koden B) kan jag lägga till en kompletterande textfil till någon av Bosse.bok etc.... Dessa textfiler har istället filändelse .boka och exemplet Bosse.bok kompletteras då med Bosse.boka när jag väljer
att komplettera till Text3.
Mitt problem är hur man förhindrar med kod att ex. Göran.bok inte kompletteras med Bosse.boka
utan att endast Bosse.bok kan kompletteras med Bosse.boka och vise verca. Detta för att fel info. inte ska kompletteras till fel fil.
Hoppas jag inte krånglat till förklaringen för omfattande....???
'För att läsa in texten från vald fil i en textbox i en annan form kan man göra så här.
'A)
Private Sub File1_Click()
Dim text As String
Load Bokvisaren
Bokvisaren.Text2 = ""
Open "C:\Bok\" & File1 For Input As #1
Bokvisaren.Visible = True
Do While Not EOF(1)
Line Input #1, text
Bokvisaren.Text2 = Bokvisaren.Text2 & text & vbNewLine
Loop
Close #1
Bokvisaren.Image1.Picture = LoadPicture("C:\Bok\" & SetImgExt(File1, "jpg"))
Bokvisaren.Show , Me
Hook hwnd
End Sub
'För att läsa in texten från vald fil i en textbox i en annan form kan man göra så här.
B)
Private Sub File2_Click()
Dim text As String
Load Bokvisaren
Bokvisaren.Text3 = ""
Open "C:\Bok\" & File2 For Input As #1
Do While Not EOF(1)
Line Input #1, text
Bokvisaren.Text3 = Bokvisaren.Text3 & text & vbNewLine
Loop
Close #1
End Sub
Mch
KennethSv: Förhindra att annan fil laddas in
private function IsSamePerson(byval pFile1 as string, byval pFile2 as string) as boolean
' Rutinen förutsätter att båda filerna heter samma, och att enbart extensionen skiljer.
Dim lPos as long
' Hitta var extensionen börjar i fil 1
lPos = instrRev(pFile1,".")
' Finns det ingen punkt, hoppa ur
if lPos = 0 then exit function
' Kolla så att pFile2 namnet är kortare än extensionspunkten i pFile1
if len(pFile2) < lPos then exit function
' Gör om filnamnen till lowercase
pFile1 = lcase$(pFile1)
pFile2 = lcase$(pFile2)
' Jämför nu namnen fram till och med extensions punkten
if left$(pFile1,lPos) = left$(pFile2,lPos)
IsSamePerson = true
end if
end function