|
it
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Creating a variable name as the value of another variable.Hi,
Something I've never come across before and has given me a headache. I have a txt file with content similar to below I want to read in each line do a split on the = and then create a variable with the name of the first value and the value of the second. I'm fine with the splitting etc but I haven't got a clue of how to set the variable name to the value on another variable? any ideas anyone? Variable1=Value1 Variable2=Value2 etc etc rdsteven***@hotmail.co.uk wrote:
Show quoteHide quote > Hi, Why do you need dynamic variable names? If you could explain the necessity, > > Something I've never come across before and has given me a headache. > I have a txt file with content similar to below I want to read in each > line do a split on the = and then create a variable with the name of > the first value and the value of the second. I'm fine with the > splitting etc but I haven't got a clue of how to set the variable name > to the value on another variable? > > any ideas anyone? > > > > Variable1=Value1 > Variable2=Value2 > etc etc perhaps we could suggest an alternative, such as a Dictionary object. -- Microsoft MVP - ASP/ASP.NET Please reply to the newsgroup. This email account is my spam trap so I don't check it very often. If you must reply off-line, then remove the "NO SPAM" Your variables have to be declared before you can execute your code. How
would you be able to create a variable named, for example, Variable1 until the program is executed and you actually encounter it. You could create an array of 2 element arrays! The first element could contain the name of Variable1, and the second element could contain the value. If this doesn't help, you might want to expand on your question. Regards, "Bondo" Joe <rdsteven***@hotmail.co.uk> wrote: Show quoteHide quote > Hi, > > Something I've never come across before and has given me a headache. > I have a txt file with content similar to below I want to read in each > line do a split on the = and then create a variable with the name of > the first value and the value of the second. I'm fine with the > splitting etc but I haven't got a clue of how to set the variable name > to the value on another variable? > > any ideas anyone? > > > > Variable1=Value1 > Variable2=Value2 > etc etc > "jp2code" <poojo.com/mail> wrote in message Actually, the VBS Execute statement allows you to execute script code, news:uJGir8EDIHA.5024@TK2MSFTNGP06.phx.gbl... > Your variables have to be declared before you can execute your code. How > would you be able to create a variable named, for example, Variable1 until > the program is executed and you actually encounter it. passed to it in a variable. It is possible to dynamically construct variable declarations, assignments, functions, etc, and then run the generated code in the same context as the static part of the script. That part is easy; coming up with a valid and compelling reason to use this is the challenge. In the case of dynamically declared variables, what good are they, unless they're referenced elsewhere in the code (and if that was the case, they really wouldn't be all that dynamic, would they? As for the OP, if the .txt file contains legal VBS assignments, why split, why not just execute the whole file? Otoh, allowing unknown script to be executed on your server is pretty low on the list of safe and sane things for your site to facilitate. In almost all cases there are better design options to be had by using arrays or a dictionary... in fact, the overwhelming majority of reasons people think they want to write self-modifying code are really, really lame. So to the OP, consider all options first; use Execute as a last resort. -Mark Show quoteHide quote > You could create an array of 2 element arrays! The first element could > contain the name of Variable1, and the second element could contain the > value. > > If this doesn't help, you might want to expand on your question. > > Regards, > "Bondo" Joe > > <rdsteven***@hotmail.co.uk> wrote: >> Hi, >> >> Something I've never come across before and has given me a headache. >> I have a txt file with content similar to below I want to read in each >> line do a split on the = and then create a variable with the name of >> the first value and the value of the second. I'm fine with the >> splitting etc but I haven't got a clue of how to set the variable name >> to the value on another variable? >> >> any ideas anyone? >> >> >> >> Variable1=Value1 >> Variable2=Value2 >> etc etc >> > > Mark J. McGinty wrote:
> In almost all cases there are better design options to be had by using .... and [also to the OP] the reason why Execute should be avoided? Because > arrays or a dictionary... in fact, the overwhelming majority of > reasons people think they want to write self-modifying code are > really, really lame. So to the OP, consider all options first; use > Execute as a last resort. .. every use of Execute in your code causes a new instance of the vbscript compiler to be spawned, impairing performance and utilizing extra server resources. -- Microsoft MVP - ASP/ASP.NET Please reply to the newsgroup. This email account is my spam trap so I don't check it very often. If you must reply off-line, then remove the "NO SPAM"
Show quote
Hide quote
"Bob Barrows [MVP]" <reb01501@NOyahoo.SPAMcom> wrote in message ....spawns a new instance of the vbscript compiler? Ooook... sounds news:OGYN8nLDIHA.5980@TK2MSFTNGP04.phx.gbl... > Mark J. McGinty wrote: > >> In almost all cases there are better design options to be had by using >> arrays or a dictionary... in fact, the overwhelming majority of >> reasons people think they want to write self-modifying code are >> really, really lame. So to the OP, consider all options first; use >> Execute as a last resort. > . > ... and [also to the OP] the reason why Execute should be avoided? Because > every use of Execute in your code causes a new instance of the vbscript > compiler to be spawned, impairing performance and utilizing extra server > resources. serious... I wonder if it spawns the vbscript linker too? I don't suppose you have a link about this? I'd like to read more, but can't seem to find anything on google. -Mark Show quoteHide quote > -- > Microsoft MVP - ASP/ASP.NET > Please reply to the newsgroup. This email account is my spam trap so I > don't check it very often. If you must reply off-line, then remove the > "NO SPAM" > Mark J. McGinty wrote:
Show quoteHide quote > "Bob Barrows [MVP]" <reb01501@NOyahoo.SPAMcom> wrote in message Google for Eric Lippert's "famous" "Eval is Evil" blog entry (Fabulous > news:OGYN8nLDIHA.5980@TK2MSFTNGP04.phx.gbl... >> Mark J. McGinty wrote: >> >>> In almost all cases there are better design options to be had by >>> using arrays or a dictionary... in fact, the overwhelming majority >>> of reasons people think they want to write self-modifying code are >>> really, really lame. So to the OP, consider all options first; use >>> Execute as a last resort. >> . >> ... and [also to the OP] the reason why Execute should be avoided? >> Because every use of Execute in your code causes a new instance of >> the vbscript compiler to be spawned, impairing performance and >> utilizing extra server resources. > > ...spawns a new instance of the vbscript compiler? Ooook... sounds > serious... I wonder if it spawns the vbscript linker too? > > I don't suppose you have a link about this? I'd like to read more, > but can't seem to find anything on google. > > Adventures in Coding) -- Microsoft MVP - ASP/ASP.NET Please reply to the newsgroup. This email account is my spam trap so I don't check it very often. If you must reply off-line, then remove the "NO SPAM"
ASP Page, Access Base, PARAMETER not send !!!
Page continuously refreshs Newbie: Problem with dsn odbc Focus on element not working correctly IsPostBack but in ASP Why this ASP code all of the sudden stopped working? PLEASE HELP! Getting Error -214746259 Visual Studio 2005 backwards compatible with classic ASP ? Http 500 Internal Error using dot.net with asp classic ? |
|||||||||||||||||||||||