Avatar billede borrisholt Novice
30. april 2002 - 08:09 Der er 17 kommentarer og
1 løsning

Delphi --> VB

Hej

Er der ikke nogen der kan lidt Delphi som kan oversætte det her til VB :

function GetFileName : String;
var
  i : Integer;
begin
  Result := FloatToStr(now) + '.sms';
  i := pos(',', Result);
  Delete(Result, i, 1);
end;

Jens B
Avatar billede sjh Nybegynder
30. april 2002 - 13:56 #1
Nu er jeg ikke sikker på hvad "FloatToStr" betyder/gør men det ser ud som om det er noget i stil med koden her:

Function GetFileName() As String
  GetFileName = CStr(Now & ".sms")
End Function

Hvad gør din function så er det nemmer at lave det om.
Avatar billede borrisholt Novice
01. maj 2002 - 07:52 #2
Jammen du er der næsten .. Du mangler lige at fjerne kommaet ...

Jens B
Avatar billede sjh Nybegynder
01. maj 2002 - 15:01 #3
jeg kan ikke se at der er komma i det.

GetFileName giver/= "01-05-02 14:55:18.sms"
der er kun "-" og ":"
Avatar billede borrisholt Novice
01. maj 2002 - 15:30 #4
det skal være mere noget i retning af det her :

Function GetFileName() As String
  Dim f As Double
  Dim i As Integer
  f = Now
  GetFileName = CStr(f)
  i = InStr(1, s, ",")
  GetFileName = Left$(GetFileName, i - 1) & Right$(GetFileName, Len(GetFileName))

End Function

Bortset fra det ikke kompilerer ...

Jens B
Avatar billede sjh Nybegynder
01. maj 2002 - 15:38 #5
hvad er "s"

i = InStr(1, s, ",")

(Du kan ikke finde "," hvis det ikke er der)
Avatar billede borrisholt Novice
01. maj 2002 - 15:41 #6
nej det er jeg godt klar over ...

Jeg tager Datoen konveterer den til en Double
konveterer Doublen til en Strend. som nu indeholder 37377,65 ... og så nogle felre decimaler ... Derfra vil jeg gerne fjerne mit komma !

Jens B
Avatar billede sjh Nybegynder
01. maj 2002 - 15:46 #7
Så må det være sådan du vil have det.

Function GetFileName() As String
  GetFileName = CStr(CDbl(Date) & ".sms")
End Function
Avatar billede borrisholt Novice
01. maj 2002 - 15:53 #8
Hmmn .. Ja nu nærmer vi os ..... Så mangler jeg blot det der stod EFTER kommaet ....

Altså som oprindeligt skrevet !

Jens B
Avatar billede borrisholt Novice
01. maj 2002 - 15:56 #9
Altså start med

Function GetFileName() As String
  GetFileName = CStr(CDbl(Now) & ".sms")
End Function

Og så slet kommaet ..

Har VB ikke en pendant til Delphis Delete :

procedure Delete(var S: string; Index, Count:Integer);

Description

Delete removes a substring of Count characters from string S starting with S[Index]. S is a string-type variable. Index and Count are integer-type expressions.

If Index is larger than the length of S, no characters are deleted. If Count specifies more characters than remain starting at the S[Index], Delete removes the rest of the string.

Jens B
Avatar billede sjh Nybegynder
01. maj 2002 - 15:56 #10
hvad betyder/gør "FloatToStr"
Avatar billede borrisholt Novice
01. maj 2002 - 15:57 #11
FloatToStr konveterer en Floating point type til en streng
Avatar billede borrisholt Novice
01. maj 2002 - 16:02 #12
ALTSÅ

Function GetFileName() As String
  Dim s As String
  Dim i As Integer
  s = CStr(CDbl(Now) & ".sms")
  i = InStr(1, s, ",")
  s = Delete(s, i, 1);
End Function


Hvor DELETE er en Delphi komando

Jens B
Avatar billede sjh Nybegynder
01. maj 2002 - 16:09 #13
Sådan.

Function GetFileName() As String
Dim s As String
Dim i As Integer
  s = CStr(CDbl(Now) & ".sms")
  i = InStr(1, s, ",")
  GetFileName = CStr(Left(s, i - 1) & Right(s, i))
End Function
Avatar billede borrisholt Novice
01. maj 2002 - 16:14 #14
tak ...

Jens B
Avatar billede borrisholt Novice
01. maj 2002 - 16:16 #15
kan man også få ALLE 10 decimaler med ? Jeg skal bruge det til en unik kronologisk nummering af filer. Så 5 decimaler er ikke nok

Jens B
Avatar billede sjh Nybegynder
01. maj 2002 - 16:17 #16
den kunne også se sådan ud:

Function GetFileName() As String
Dim s As String
Dim i As Integer
  s = CStr(CDbl(Now) & ".sms")
  i = InStr(1, s, ",")
  GetFileName = CStr(Left(s, i - 1) & Right(s, Len(s) - i))
End Function
Avatar billede borrisholt Novice
01. maj 2002 - 16:18 #17
SE det var lige DET sidste jeg skulle bruge !

Jens B
Avatar billede sjh Nybegynder
01. maj 2002 - 16:28 #18
Jeg var sikker på at det skulle passe med noget specelt, for ellers kunne du bare gøre det sådan:

Function GetFileName() As String
  GetFileName = Int(DateDiff("s", 0, Now))
End Function
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester