Avatar billede pissed_squirrel Nybegynder
21. december 2004 - 00:36 Der er 23 kommentarer og
3 løsninger

Fra Tekst til Octal

Jeg har søgt og kunne ikke finde et spørgsmål som omhandlede en convertor som konvertere fra tekst til octal

Jeg har prøvet at lave en sådan, men kan ikke lige finde hoved og hale i det, så derfor tænkte jeg at der muligvis var nogle her inde der kunne og ville hjælpe mig
Avatar billede baitianlong Nybegynder
21. december 2004 - 00:57 #1
Kan du ikke lige give et eksempel på før/efter... Hvad skal "abc" f.eks blive til?
Avatar billede pissed_squirrel Nybegynder
21. december 2004 - 01:02 #2
a = 141
b = 142
c = 143

A = 101
B = 102
C = 103

Der er dog en funktion i PHP som hedder decoct som konvertere fra decimal til octal, men det er lige hvordan man skal gøre det smartest
Avatar billede pissed_squirrel Nybegynder
21. december 2004 - 01:08 #3
Avatar billede googolplex Novice
21. december 2004 - 01:13 #4
<?php
$string = 'abc';

for ($i = 0; $i < strlen($string); $i++)
{
    $texttooctal = decoct(ord($string[$i]));
    echo $texttooctal;
}

?>
Avatar billede googolplex Novice
21. december 2004 - 01:14 #5
Avatar billede pissed_squirrel Nybegynder
21. december 2004 - 01:17 #6
Fornemt googleplex, hvad så med den anden vej (tilbage til tekst)??
Avatar billede googolplex Novice
21. december 2004 - 01:20 #7
<?php
$string = 'abc';

for ($i = 0; $i < strlen($string); $i++)
{
    $octaltotext = chr(octdec($string[$i]));
    echo $texttooctal;
}

?>
Avatar billede googolplex Novice
21. december 2004 - 01:21 #8
Hov:


21/12-2004 01:20:25    <?php
$string = 'abc';

for ($i = 0; $i < strlen($string); $i++)
{
    $octaltotext = chr(octdec($string[$i]));
    echo $octaltotext;
}

?>
Avatar billede googolplex Novice
21. december 2004 - 01:21 #9
Sidste forsøg :P

<?php
$string = 'abc';

for ($i = 0; $i < strlen($string); $i++)
{
    $octaltotext = chr(octdec($string[$i]));
    echo $octaltotext;
}

?>
Avatar billede pissed_squirrel Nybegynder
21. december 2004 - 01:23 #10
Jeg får 370 370 370 som output på den sidste lige meget hvad jeg smider i gennem den
Avatar billede pissed_squirrel Nybegynder
21. december 2004 - 01:24 #11
Jeg kan ikke se nogen forskel på de 3 sidste du har postet
Avatar billede googolplex Novice
21. december 2004 - 01:28 #12
En variabel blev ikke kopieret korrekt i den første og i den anden kom der noget noget dato-fis med :)

Her er de som funktioner:

<?php

function text2octal($text)
{
    $octalstring = '';
   
    for ($i = 0; $i < strlen($text); $i++)
    {
        $octalstring .= decoct(ord($text[$i]));
    }
   
    return $octalstring;
}

function octal2text($octal)
{
    $textstring = '';
   
    for ($i = 0; $i < strlen($octal); $i++)
    {
        $textstring .= chr(octdec($octal[$i]));
    }
   
      return $textstring;
}

$string = 'abc';
echo octal2text(text2octal($string));

?>
Avatar billede googolplex Novice
21. december 2004 - 01:31 #13
Hmm, den sidste virker ikke helt...
Avatar billede pissed_squirrel Nybegynder
21. december 2004 - 01:34 #14
Det enste jeg får ud af dine funktioner er 
Avatar billede googolplex Novice
21. december 2004 - 01:34 #15
Hmm, kan godt se hvorfor den sidste ikke virker hehe, laver den i morgen :)
Avatar billede googolplex Novice
21. december 2004 - 01:35 #16
<?php

function text2octal($text)
{
    $octalstring = '';
 
    for ($i = 0; $i < strlen($text); $i++)
    {
        $octalstring .= decoct(ord($text[$i]));
    }
 
    return $octalstring;
}

$string = 'abc';
echo text2octal($string);

?>

Dette virker fint hos mig.
Avatar billede pissed_squirrel Nybegynder
21. december 2004 - 01:35 #17
Ok, god nat
Avatar billede pissed_squirrel Nybegynder
21. december 2004 - 01:36 #18
Virker også fint hos mig, men det er når den skal konvertere tilbage til tekst igen at det går galt
Avatar billede coderdk Praktikant
21. december 2004 - 01:45 #19
Hvad med:

<?php

    $text = "abCdeFg";
   
    $inoct = preg_replace( "/./e", "sprintf( '%3o', ord('\\0'))", $text );
    $fromoct = preg_replace( "/.{3}/e", "chr( octdec( \\0 ) )", $inoct );

    echo "text = '$text'<br>inoct = '$inoct'<br>fromoct = '$fromoct'<br>";

?>
Avatar billede googolplex Novice
21. december 2004 - 08:21 #20
coderdk: Nice :)

Mht. /.{3}/, kan man godt gå ud fra ar det altid er 3 tal ?
Avatar billede googolplex Novice
21. december 2004 - 08:22 #21
Hov, hvorfor lagde den et svar :(
Avatar billede pissed_squirrel Nybegynder
21. december 2004 - 08:56 #22
Hvem vil have point?
Avatar billede olebole Juniormester
21. december 2004 - 19:31 #23
<ole>

Ellers har jeg engang skrevet et program, der kan den slags (den ene vej, that is):
  http://tjenester.dk/x-codes.dk/eksperten/oktal_konverter/

/mvh
</bole>
Avatar billede coderdk Praktikant
21. december 2004 - 23:21 #24
googolplex, jo det er sandt, men hvis du ved du har brugt den første preg til at lave oct-versionen, burdet det være ok :)

pissed_squirrel, du burde give pointene til den løsning du brugte :) Hvis du brugte googolplex's skal han da have dem :D
Avatar billede pissed_squirrel Nybegynder
22. december 2004 - 12:09 #25
Jeg har brugt noget af din og noget af hans, så egentlig skal i vel begge have nogle point
Avatar billede coderdk Praktikant
22. december 2004 - 15:01 #26
Ok :)
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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