Avatar billede cuac Nybegynder
29. marts 2004 - 13:07 Der er 7 kommentarer og
1 løsning

Windows prompt til at gemme fil med valgt filnavn

Jeg skal bruge en windows XP promt til at gemme en fil med kendt extension (*.RiDat) Da jeg i mit script  på et tidspunkt skal bruge et filnavn.

Sub Main()

Filnavn = ?????

End sub
Avatar billede medions Nybegynder
29. marts 2004 - 13:10 #1
Fx.

Function SaveTextData(FileName, Text, CharSet)
  Const adTypeText = 2
  Const adSaveCreateOverWrite = 2
 
  'Create Stream object
  Dim BinaryStream
  Set BinaryStream = CreateObject("ADODB.Stream")
 
  'Specify stream type - we want To save text/string data.
  BinaryStream.Type = adTypeText
 
  'Specify charset For the source text (unicode) data.
  If Len(CharSet) > 0 Then
    BinaryStream.CharSet = CharSet
  End If
 
  'Open the stream And write binary data To the object
  BinaryStream.Open
  BinaryStream.WriteText Text
 
  'Save binary data To disk
  BinaryStream.SaveToFile FileName, adSaveCreateOverWrite
End Function


//>Rune
Avatar billede medions Nybegynder
29. marts 2004 - 13:12 #2
Du kan oxo bruge File system objects:

Function SaveBinaryDataTextStream(FileName, ByteArray)
  'Create FileSystemObject object
  Dim FS: Set FS = CreateObject("Scripting.FileSystemObject")
 
  'Create text stream object
  Dim TextStream
  Set TextStream = FS.CreateTextFile(FileName)
 
  'Convert binary data To text And write them To the file
  TextStream.Write BinaryToString(ByteArray)
End Function

//>Rune
Avatar billede medions Nybegynder
29. marts 2004 - 13:16 #3
Dette virker for mig:

Function SaveTextData(FileName, Text)
  Const adTypeText = 2
  Const adSaveCreateOverWrite = 2
 
  'Create Stream object
  Dim BinaryStream
  Set BinaryStream = CreateObject("ADODB.Stream")
 
  'Specify stream type - we want To save text/string data.
  BinaryStream.Type = adTypeText

 
  'Open the stream And write binary data To the object
  BinaryStream.Open
  BinaryStream.WriteText Text
 
  'Save binary data To disk
  BinaryStream.SaveToFile FileName, adSaveCreateOverWrite
End Function

Call SaveTextData("hej.txt", "testadsf")

//>Rune
Avatar billede cuac Nybegynder
29. marts 2004 - 13:20 #4
Hvor definerer jeg lige at jeg gerne vil have min filextension = RiDat
Avatar billede medions Nybegynder
29. marts 2004 - 13:25 #5
Min fejl.. SÅdan her:

Function SaveTextData(FileName, Text)
  Const adTypeText = 2
  Const adSaveCreateOverWrite = 2
 
  'Create Stream object
  Dim BinaryStream
  Set BinaryStream = CreateObject("ADODB.Stream")
 
  'Specify stream type - we want To save text/string data.
  BinaryStream.Type = adTypeText
 
  'Specify charset For the source text (unicode) data.
  'If Len(CharSet) > 0 Then
  '  BinaryStream.CharSet = CharSet
  'End If
 
  'Open the stream And write binary data To the object
  BinaryStream.Open
  BinaryStream.WriteText Text

  If InStr(FileName, ".") Then
    arrFName = SPlit(FileName, ".")
    FileName = LBound(arrFName)
        FileName = Filename & ".RiDat"
  Else
        FileName = Filename & ".RiDat"
  End If
 
  'Save binary data To disk
  BinaryStream.SaveToFile FileName, adSaveCreateOverWrite
End Function

Call SaveTextData("hej", "testadsf")

//>Rune
Avatar billede cuac Nybegynder
29. marts 2004 - 14:10 #6
Ok, jeg får en syntaks error i første linie SaveTextData(FileName, Text)
når jeg sætter mit filnavn

Sub Main()
Filnavn = SaveTextData
End sub

Men, jeg tror du har misforstået mit spørgsmål, jeg vil jo gerne have den kendte windowsprompt "Save as" eller "Gem som" hvor jeg kan vælge mappe ogskrive et filnavn, og hvor der i filtypen står RiDat.
Avatar billede medions Nybegynder
30. marts 2004 - 15:15 #7
Det skal jo se sådan her ud:

Sub Main()
Filnavn = SaveTextData "filnavn", "filens indhold"
End sub

-jeg mener ikke at man kan få en Save As box frem!

//>Rune
Avatar billede cuac Nybegynder
27. juli 2004 - 10:56 #8
Kan desværre ikke bruge forslagene, spørgsmålet lukkes
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