Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Omvandla tal i fil

Postades av 2001-12-10 12:09:10 - Bo Johansson, i forum visual basic - allmänt, Tråden har 9 Kommentarer och lästs av 462 personer

Ett problem. Ett dos program har sparat värde i en fil. Jag försöker nu
läsa in och tyda dessa data. I min hexeditor ser filen ut enligt nedan:

00 10 00 00 ¦ 00 00 00 00 ¦ 00 20 00 00 ¦ 00 00 00 00
00 30 00 00 ¦ 00 00 00 00 ¦ 00 40 00 00 ¦ 00 00 00 00
00 50 00 00 ¦ 00 00 00 00 ¦ 00 60 00 00 ¦ 00 00 00 00
00 70 00 00 ¦ 00 00 00 00 ¦ 00 80 00 00 ¦ 00 00 00 00

Där 00 10 00 00 ¦ 00 00 00 00 skall vara talet 1,
00 20 00 00 ¦ 00 00 00 00 skall vara talet 2 osv.

och (ej med på ovanstående)
10 12 34 56 │ 78 90 00 00
skall vara talet 123456789

Jag kan inte komma på hur läsa in det i VB. Dvs läsa in i sträng går ju
men på något sätt läses inte från början och omvandligen har jag också problem med. Har provat med Hex etc utan någon lycka.
Någon som har några ideer?
M.V.H.
Bo Johansson


Svara

Sv: Omvandla tal i fil

Postades av 2001-12-10 13:34:16 - Sven Åke Persson

Hej
>och (ej med på ovanstående)
>10 12 34 56 │ 78 90 00 00
>skall vara talet 123456789

Sånt här tycker jag är intressant men jag förstår inte ovanstående.

00 10 00 00 ¦ 00 00 00 00 skall detta verkligen bli 1.
finns tecknet | med i textfilen ?

kom igen så fixar vi detta.

mvh
Sven



Svara

Sv: Omvandla tal i fil

Postades av 2001-12-10 14:01:07 - Bo Johansson

Hej Sven!
Tack för dit intresse!
Det logger lagrat:
10 12 34 56 78 90 00 00 00 02 11 00 00 00 00 00 00 00
och så vidare.

Där
10 12 34 56 78 90 00 00 00
tlet skall vara 123456789.
och
02 11 00 00 00 00 00 00 00
där talet skall vara 11
Jag anta att de första två på något sätt talar om hur många siffror
som är lagrade.
Bo


Svara

Sv: Omvandla tal i fil

Postades av 2001-12-10 15:43:03 - Thomas Tydal

> finns tecknet | med i textfilen ?

Det är nog ingen textfil, utan snarare en binärfil.


Svara

Sv: Omvandla tal i fil

Postades av 2001-12-10 15:47:42 - Emma Magnusson

Om det står:

10 12 34 56 78 90 00 00 00 02 11 00 00 00 00 00 00 00
och så vidare.

Där
10 12 34 56 78 90 00 00 00
tlet skall vara 123456789.
och
02 11 00 00 00 00 00 00 00


Verkar det snarare vara en decimal fil. Annars har du inte 0-9. Brukar
annars använda octa eller hexadecimala - men 8 och 9 finns med så
octa är uteslutet, på samma sätt finns varken någon av bokstäverna
A till F med... så det verkar inte vara hexadecimalt...

//Emma


Svara

Sv: Omvandla tal i fil

Postades av 2001-12-10 15:49:49 - Thomas Tydal

> Där 10 12 34 56 78 90 00 00 00
> tlet skall vara 123456789.

Nu hänger jag inte riktigt med. Om du lagrar talet 123456789 så blir det ju 15 CD 5B 07 när du tittar på det i en hexeditor.

Hur stor är filen? Vad är det för sorts fil? =Vet= du vad den har för innehåll?


Svara

Sv: Omvandla tal i fil

Postades av 2001-12-10 15:58:32 - Thomas Tydal

> Verkar det snarare vara en decimal fil.

En fil kan inte vara decimal. Den kan inte vara oktal eller hexadecimal heller för den delen. En fil består alltid bara av ettor och nollor. Dessa kan sedan visas på olika sätt beroende på vilket program man tittar på dem i.


Svara

Sv: Omvandla tal i fil

Postades av 2001-12-10 16:05:39 - Bo Johansson

Filen kan vara så stor eller liten jag vill! Jag tillverkar den själv i ett dos program. Problemet är att i det gammla språk som används lagras värdena som flyttal och mitt problem är att jag vill kunna läsa in den i VB miljö. När jag tittar i den med en hexeditor så får jag fram de tecken
som jag beskrivit. Antagligen är det de första tecknen som på något sätt
beskriver innehållet i posten. Där kan finnas ett hexvärde tex 0C alltså
12 och det finns mycket riktigt 12 tecken i posten, men decimaler framgår inte!
Något att bita i!
Bo


Svara

Sv: Omvandla tal i fil

Postades av 2001-12-10 17:47:37 - Thomas Tydal

Aha, flyttal... jag trodde det var heltal. Har inte i huvudet hur flyttal är uppbyggda, men en double är väl åtta bytes och det är förmodligen det han har lagrat.

Men jag tror det är enklare om jag undersöker filen. Ta och spara följande värden i den: 64 512 4096 och 16384 och skicka den sedan till tt@tydal.nu


Svara

Sv: Omvandla tal i fil

Postades av 2001-12-10 21:49:03 - Sven Åke Persson

Hej så här blev min lösning
Option Explicit
Dim SplitArray() As String
Dim ByteArray(7) As Byte
Dim TestStr As String

Private Sub Form_Load()
Dim i As Long
'Här lägger man in test strängen. 8 byte åt gången
exempel:
' "04 12 35 60 00 00 00 00"
' "06 12 34 56 00 00 00 00"
' "08 12 34 56 70 00 00 00"
' "04 12 35 67 00 00 00 00"
' "FE 01 12 34 00 00 00 00"
TestStr = "08 12 34 56 70 00 00 00"
SplitArray = Split(TestStr)
For i = 0 To 7
ByteArray(i) = Val("&H" & SplitArray(i))
Next 'i
End Sub

Private Sub Command1_Click()
Dim ret As Double
ret = OmVal
Label1.Caption = CStr(OmVal)
End Sub

Private Function OmVal() As Double
Dim ManStr As String
Dim EXPStr As String
Dim i As Long
ManStr = ""
For i = 0 To 6
ManStr = ManStr & Left$(Hex$(ByteArray(i + 1) And 240), 1) _
& Hex$(Hex$(ByteArray(i + 1) And 15))
Next 'i
ManStr = Left$(ManStr, 1) & "." & Mid$(ManStr, 2, Len(ManStr))
If (ByteArray(0) And 128) = 128 Then
EXPStr = "-" & Hex$((((ByteArray(0) And 254) Xor 254) + 1) / 2)
Else
EXPStr = CStr((ByteArray(0) And 254) / 2)
End If
OmVal = Val(ManStr & "E" & EXPStr)
End Function

mvh
Sven


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 628
27 953
271 710
6 480
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies