Жив е, той жив е ! Там пред екранапотънал в мисли, седи и пишеедна дълга, сложна програма,програма нова, мощна и бърза.
На една страна захвърлил мишка,на друга CD, на две строшено,очи тъмнеят, глава се люшка,уста проклинат всичко сгрешено.
Пише той лудо, пише момчето,бърза да чукне последния редхлебарка лази по чекмеджето,към дискетите пълзи тя напред.
Два през нощта е ... Спрете сисопитез тъжни песни. Спри и ти, времев таз мръсна стая! Ще се направии тази програма... Но, млъкни PC.
Тоз, който пише дълги програми,това е то гений ! Него жалеятсисоп и юсер, хакер и кракери Sound Blaster MOD-ове свири ...
Нощем му свети low-radiation,а пък луната в диска блести.Сутрин му сянка пази монитор,Screen Saver пуска да не заспи.
Настане вечер, месец изгрее,година мине, две си отидат,програмиста все пие ли, пееили в BBS до сутрин се връзва.
Но ето, вече новия вирус,чака да бъде ъплоаднат нощес,малък, но страшно много опасенразрушава един BBS.
На един му бързо FAT-а прекарва,на друг CD-ROM-а на 10 строшава,на трети монитора бързо изгаря,а четвърти - цялостно разрушава.
И ето, пита сисопът нещастен:"Кажи, системо, де ти е FAT-a ?Кой ти нанесе тоз удар ужасен ?Кажи ми, па да си взема автомата."
Системата мощна, Maximus 5.00със сили последни така отговаря:"Не се занимавай с мене, сисопе,а намери го, оня, гадняра ..."
Но съмна вече ! И на диваналежи сисопът, сълзите текат,в сърце му има прободна рана,а BBS-a е вече отвъд ...
http://www.arakis-chan.hit.bg/poema1.htm
петък, септември 16, 2005
Поръчка за прогрaма ... ;)
Я сакам да знам мое ли да се напише програма дека, сабале да ме сабуди у 7 часо, да ме нарани да ме изчишка, изака, после да ме наруча убаво та да деяним цел ден.
После като сам наручан програмата да напои говедата дека гледам за млеко они са у кошарата. Май требе и цикъл да се тури оти иам и свинье, програмата да ги нарани с леп я зиам църн типов, послека програмата да изкара овците да ги напасе додека я щрапам връз клавиатурата и емитирам дейност ама нали сам гявол и они шефовете не моат а разберат кво чиним я цел ден пред компуторо.
После програма, незнам май масив требе да нарани кокошките, в моменто кога програмата праи тека да се ранат кокошките па с църн леп на свиньето да се изринат лайната, а па в моменто кога програмата праи тека че говедата да се измозат я да посегам кам дисайгите сос сиреньето и лебо да отфаждам у офисо та да емитирам дейност и точно кога си обувам опинците програмата вече да извести че сичката стока е наранена та я да отфаждам с кеф на работа.
Кой ми напише такава програма веднага му давам 5000 лева едно говедо опечено, 3-4 овци на чорба, 6 свинье турени у буркани за зимаска и осум кокошки с дваесе и осум яйца.
И накраю ако мое да се напише такава програма да ми се обясни алгоритамо а ако не мое да ми се обясни оти не мое.
После като сам наручан програмата да напои говедата дека гледам за млеко они са у кошарата. Май требе и цикъл да се тури оти иам и свинье, програмата да ги нарани с леп я зиам църн типов, послека програмата да изкара овците да ги напасе додека я щрапам връз клавиатурата и емитирам дейност ама нали сам гявол и они шефовете не моат а разберат кво чиним я цел ден пред компуторо.
После програма, незнам май масив требе да нарани кокошките, в моменто кога програмата праи тека да се ранат кокошките па с църн леп на свиньето да се изринат лайната, а па в моменто кога програмата праи тека че говедата да се измозат я да посегам кам дисайгите сос сиреньето и лебо да отфаждам у офисо та да емитирам дейност и точно кога си обувам опинците програмата вече да извести че сичката стока е наранена та я да отфаждам с кеф на работа.
Кой ми напише такава програма веднага му давам 5000 лева едно говедо опечено, 3-4 овци на чорба, 6 свинье турени у буркани за зимаска и осум кокошки с дваесе и осум яйца.
И накраю ако мое да се напише такава програма да ми се обясни алгоритамо а ако не мое да ми се обясни оти не мое.
сряда, септември 14, 2005
Отново безплатна музика и филми
Не е за вярване :
Днес 14.09.2005 година се проведе среща между представители на сървърите предлагащи безплатни хостинг услуги и НСБОП. На нея беше заключено, че предприетите досега мерки не са дали очаквания резултат, поради което всички свободни зони връщат пълната си функционалност. Екип от водещи юристи търсят разрешение на проблема с разпространението на файлове с нелегално съдържание в тези сървъри.
До няколко часа търсачките отново ще търсят mp3 и файлове с големина над 100МВ.
В момента търсачката на Data.BG работи в пълната си функционалност.
Източник: http://www.bgweb.info/
Днес 14.09.2005 година се проведе среща между представители на сървърите предлагащи безплатни хостинг услуги и НСБОП. На нея беше заключено, че предприетите досега мерки не са дали очаквания резултат, поради което всички свободни зони връщат пълната си функционалност. Екип от водещи юристи търсят разрешение на проблема с разпространението на файлове с нелегално съдържание в тези сървъри.
До няколко часа търсачките отново ще търсят mp3 и файлове с големина над 100МВ.
В момента търсачката на Data.BG работи в пълната си функционалност.
Източник: http://www.bgweb.info/
понеделник, септември 12, 2005
Конвертиране на string в Byte[] array
byte[] string2byte = System.Text.UnicodeEncoding.GetBytes("This is a string");
Настройки по подразбиране C# - WinForm
В .NET можете да ползвате конфигурационен файл за да задавате настройки по подразбиране на вашите приложения. Конфигурационния файл е със същото име като вашето приложение но с ".config" добавено към края на името. Този файл може да бъде зараден и стойностите му достъпни всеки път просто чрез извикване на System.Configuration.ConfigurationSettings.AppSettings["име"] където "име" е името на стойността която искате да достъпите.
За да добавите конфигурационен файл към вашия проект ,просто добавете текстови файл с име "App.config" към вашия проект. VS.NET ще копира автоматично този файл в директорията с изпълнимите изходни файлове (като debug или release) и да го преименува с името на приложението ви като "myNewApp.exe.config". Вие може само да работите "App.config" файла а VS.NET ще се погрижи за останалото.
Конфигурационния файл е форматиран по следния начин:
<configuration>
<appSettings>
<add key="MySetting" value="Some Value" />
<add key="LogFileName" value="mylog.txt" />
</appSettings>
</configuration>
Както виждате , може само да добавяте "add" елементи в "appSettings" секцията за да имате достъпни елементи в приложението ви . Ето и пример за използване на тези елементи в приложение:
using System.Configuration.ConfigurationsSettings;
string mySuperSetting = AppSettings["MySetting"];
string myLogFileName = AppSettings["LogFileName"];
Като използвате тези методи вие можете лесно да конфигурирате приложенията ви по подразбиране без да се налага да прекомпилирате цялото си приложение. ;)
За да добавите конфигурационен файл към вашия проект ,просто добавете текстови файл с име "App.config" към вашия проект. VS.NET ще копира автоматично този файл в директорията с изпълнимите изходни файлове (като debug или release) и да го преименува с името на приложението ви като "myNewApp.exe.config". Вие може само да работите "App.config" файла а VS.NET ще се погрижи за останалото.
Конфигурационния файл е форматиран по следния начин:
<configuration>
<appSettings>
<add key="MySetting" value="Some Value" />
<add key="LogFileName" value="mylog.txt" />
</appSettings>
</configuration>
Както виждате , може само да добавяте "add" елементи в "appSettings" секцията за да имате достъпни елементи в приложението ви . Ето и пример за използване на тези елементи в приложение:
using System.Configuration.ConfigurationsSettings;
string mySuperSetting = AppSettings["MySetting"];
string myLogFileName = AppSettings["LogFileName"];
Като използвате тези методи вие можете лесно да конфигурирате приложенията ви по подразбиране без да се налага да прекомпилирате цялото си приложение. ;)
Прост метод в C# за изтриване на non-alphanumeric знаци
Много е лесно да се ползва RegEx to strip изтриване на non-alphanumeric знаци. Специалния патерн "\W*" от регулярните изрази ще ви помогне . Като пример:
using System.Text.RegularExpressions;
public string StripString(string targetString)
{
return Regex.Replace(targetString,@"\W*","");
}
Дадения стринг : "This.Is a Sample~ of Removing, All 38*@&4 letters but AlphaNumeric"
След извикване на функцията StripString връщания стринг има следня вид: "ThisIsaSampleofRemovingAll384lettersbutAlphaNumeric"
using System.Text.RegularExpressions;
public string StripString(string targetString)
{
return Regex.Replace(targetString,@"\W*","");
}
Дадения стринг : "This.Is a Sample~ of Removing, All 38*@&4 letters but AlphaNumeric"
След извикване на функцията StripString връщания стринг има следня вид: "ThisIsaSampleofRemovingAll384lettersbutAlphaNumeric"
Ляво - Между- Дясно от стринг
Едно от нещата, които не харесвам в C# беше че ми се налагаше да използвам 'substring" метода на всякъде . Аз съм мързелив програмист и това не и хареса. Трябваше да напиша няколко реда код за да валидирам текст преди да мога да извикам метод без да ми хвърли exception.
Но разбира се от Микрософт са направили string класа 'sealed' така че да не може да го наследяваме и да добавяме функционалност.
Но разбира се от Микрософт са направили string класа 'sealed' така че да не може да го наследяваме и да добавяме функционалност.
Ето ви код, който може да компиларате в библиотека и да го връзвате към приложенията си . Много е удобно :). В повече към методите, които идват със string класа съм добавил Length метод, който проверява за валиден string и връща неговата дължина.
public class StringPro
{
public static string Left(string text, int letters)
{
string returnString = string.Empty;
int len = Length(text);
if(len > 0)
{
len = (len > letters) ? letters : len;
returnString = text.Substring(0,len);
}
return returnString;
}
public static string Mid(string text, int start)
{
return Mid(text,start,int.MinValue);
}
public static string Mid(string text, int start, int end)
{
string returnString = string.Empty;
int len = Length(text);
if(len > 0 && len > start)
{
len = len > (start+end) && end != int.MinValue ? end : len-start;
returnString = text.Substring(start,len);
}
return returnString;
}
public static string Right(string text, int letters)
{
string returnString = string.Empty;
int len = Length(text);
if(len > 0)
{
int count = len >= letters ? letters : len;
returnString = text.Substring(len - count, count);
}
return returnString;
}
public static int Length(string text)
{
return (text==null text==string.Empty) ? 0 : text.Length;
}
}
Абонамент за:
Публикации (Atom)