Diskuze: Spuštění s parametry
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Tvůrce
Zobrazeno 21 zpráv z 21.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Trvalo mi dlouho než jsem na to přišel, ale pokud by se to někomu hodilo, tak stačí do konstruktoru (Main()) Program.cs změnit na Main(string[] args) a args jsou cesty souborů ze kterých byl program spuštěn.
Podle mne by v args
měl být spíš spouštěcí řetězec
programu. Jako první prvek v seznamu jméno programu a za ním jeho
parametry.
Jo, 1. bývá celý řetězec s cestou k programu, další parametry z příkazové řádky. Myslím, že tady to je stejně.
Vývojáři by se občas mohli trochu sjednotit. V PHP má ta proměnná
název $argv
.
Mě přijde, že to chce mít každý nejvíce kůl, jinak si nedokážu odůvodnit, proč v PHP text echujeme
Protože se nám nechce měnit kontext
Možná máš na mysli funkci printf()
, kterou moc
nepoužívám.
Změna kontextu je uzavření ?>
, napsání textu a opět
otevření <?php
. Někdo to dělá systematicky, já nikdy.
Ne, já jen narážel na jméno té funkce echo, proč se primárně nepoužívá printf. Je to asi proto, že echo umožňuje vynechávat závorky, ale proč to není opačně
Funkce printf()
dělá substituce v prvním parametru, což
nemusí být vždy žádoucí. Ovšem je sporné, co je vlastně
přehlednější.
a try... with v F# Možná sem dám něco jako Hello world v různých jazycích, už jsem to někde viděl, tak vybrat nějaké zajímavé.
Oživím tohle téma a chtěl bych se zeptat:
mám úplně jednoduchý program typu echo a chtěl bych mu z jako parametr
předat text, který má vypisovat spolu s datem a časem. Jak se tomu programu
parametr předá? Např. pro volání MojeECHO "Zpracování ukončeno".
Dík
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace PAecho
{
class Program
{
static void Main(string[] args)
{
DateTime datum;
String predanyText;
datum = DateTime.Now;
Console.WriteLine("{0} {1}", datum, predanyText);
Console.ReadKey();
}
}
}
Myslíš takhle?
static void Main(string[] predanyText)
{
DateTime datum;
/// String predanyText;
datum = DateTime.Now;
Console.WriteLine("{0} {1}", datum, predanyText);
Console.ReadKey();
}
Asi ne, něco mi tam chybí ...
Chybí, predanyText je pole stringu, takže bys musel napsat Console.WriteLine("{0} {1}", datum, predanyText[0]);
Děkuju za pomoc, už mi to chodí.
pro to přetažení jsem to řešil takhle:
private void Form1_DragEnter(object sender, DragEventArgs e)
{
//e.Effect = DragDropEffects.All;
string[] poleSoubor = (string[])(e.Data.GetData(DataFormats.FileDrop, false)); //vrátí pole s adresama k souborům
soubor = Convert.ToString(poleSoubor[0]);
FileInfo fi = new FileInfo(soubor);
if (fi.Extension == ".ada")
{
StreamReader sr = new StreamReader(soubor);
soubor = sr.ReadToEnd();
vyplnDataAda(soubor);
}
else if (fi.Extension == ".html")
{
vyplnDataHtml(soubor);
}
else
{
SystemSounds.Asterisk.Play();
string text = "Nepodporovaný soubor!!!";
messBox messBox = new messBox(text);
minimalizuj = false;
messBox.ShowDialog();
minimalizuj = true;
//MessageBox.Show("Nepodporovaný soubor!!!", "Chyba", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
a co se týče toho spuštění ze souboru tak to si musíš asociovat přes registry svoji příponu souboru, toto jsem vyřešil přes instal creator ve VS 2010, protože když jsem to zkoušel přes regi tak mi to dělalo bordel, chovalo se to jinak na XP, W7, W8 tak jsem to udělal přes ten instal cerator ve VS, kde je možnost si i zaregistrovat svoji příponu a je to bez starostí a problemů na různých platformách woken tady je návod na tubu:
Zobrazeno 21 zpráv z 21.