Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2016.07.31;
Скачать: CL | DM;

Вниз

Просто оставлю здесь. Кодировать символы Юникод для JS-скриптов.   Найти похожие ветки 

 
Endy   (2014-11-21 04:01) [0]

Я просто оставлю это здесь. На память. Можно?

Procedure TForm1.Button1Click(Sender: TObject);
Var i: Integer; r: String; u: WideString;
Begin
u:=UTF8Decode(AnsiToUtf8(Memo1.Text));
r:="";
For i:=1 To Length(u) Do
     If (Integer(u[i])>191) Then
           r:=r+"\u"+LowerCase(IntToHex(Integer(u[i]), 4))
     Else
           r:=r+u[i];
Memo2.Text:=r;
End;


 
Dimka Maslov ©   (2014-11-21 10:39) [1]

На память принято оставлять тут:
http://kladovka.net.ru/delphibase/

Для этого оно и создавалось


 
QAZ   (2014-11-21 16:40) [2]


> На память принято оставлять тут:

принято? кем и когда?
там инфы меньше чем в факю средней паршивости


 
brother ©   (2014-11-21 17:37) [3]

Димка пиарится :)


 
Плохиш ©   (2014-11-21 17:59) [4]


> QAZ   (21.11.14 16:40) [2]

> принято? кем и когда?

для тебя не принято, можешь ничего не оставлять.


 
Jeer ©   (2014-11-21 20:11) [5]

Да, иногда нужно нарушать Правила - это предоставляет иные возможности.

Преамбула.

Иногда во множестве документов Excel необходимо вернуться к старому формату MS Office ( до 2007 ). Ручками? Фи!
Конвертируем в текущем каталоге все xlsx в xls js-скриптом:


Код, почти ученический, но работает :)

// ***************************************************
// Excel-converter: Office 2007 ( xlsx ) -> Office 2000 ( xls )
// (C) Jeer
*****************************************************

// const
vers = " Vers. 1.3; 2014-11-20 00:02.\n\n";
xlExcel7 = 39;
xlExcel8 = 56;

// var
var fXLS = new String("");
var ext = new String("");
var fw = "log.txt";
var fn = new String("");
var dtNow = new Date();
var cntX = 0;
var cntEX = 0;

// Change file extention
function ChangeExt(filename, NewExt)
{ var fname, s;
if (filename=="")
return("");
i = filename.lastIndexOf(".")
if (i < 0)
fname = filename;
if (i > 0)
fname = filename.substring(0,i);
return(fname + "." + NewExt);
}

// Create objects
var fso = new ActiveXObject("Scripting.FileSystemObject");
var CurPath = fso.GetAbsolutePathName("C:");
var app = WScript.CreateObject("Excel.Application");
var hw = fso.OpenTextFile(fw, 2, true);

// Options for Excel
app.Visible = false;
app.DisplayAlerts = false;

fld = fso.GetFolder(CurPath);

// List of files
fc = new Enumerator(fld.files);
hw.Write(dtNow + "\n");
hw.Write(vers);
hw.Write("Files xlsx -> xls converted:\n\n");

// Loop for files "*.xlsx" and save as old (MS Ofiice < 2007) format
for (; !fc.atEnd(); fc.moveNext()) {
fXLSX = new String(fc.item());

if (fso.GetExtensionName(fXLSX) == "xls") { cntX+=1;}

if (fso.GetExtensionName(fXLSX) == "xlsx") {
fXLS = new String(fXLSX);
fXLS = ChangeExt(fXLSX,"xls");
var wb = app.WorkBooks.Open(fXLSX);
wb.SaveAs(fXLS, xlExcel8);
wb.Close.SaveChanges = true;
fn = fso.GetFile(fXLSX);
fn.Delete();
cntEX+=1;
hw.Write(" " + cntEX + ". " + fXLSX+"\n");
}
}

// Close Excel, free&nil objects, save log.

app.Close;
app = null;
cnt = 0;

hw.Write("\n Files count: \n");
hw.Write(" *.xls: " + cntX + ".\n");
hw.Write(" *.xlsx: " + cntEX + ".\n");
hw.Write("\n Files *.xlsx deleted: " + cntEX + ".\n");

dtEnd = new Date();
hw.Write("\n Time elapsed: " + (dtEnd.getTime() - dtNow.getTime()) + ", [ms].\n");

fso = null;
hw = null;
fc = null;

// Enjoy!


 
Rouse_ ©   (2014-11-21 20:15) [6]


> Можно?

Конечно можно, только код не верный, а так - оставляй, без вопросов :)


 
Jeer ©   (2014-11-21 20:24) [7]

Розыч, а шо - не самая худшая идея - сделать топик об интересных "находках" новичков для разбора остальными.


 
Rouse_ ©   (2014-11-21 20:30) [8]


> Jeer ©   (21.11.14 20:24) [7]

Дык "Орешник" же есть, надо Ромку пнуть, чтоб он его возродил в прежнем виде :)


 
Jeer ©   (2014-11-21 20:37) [9]

Нэ.. Орешник - это понятно.
Я несколько о другом.
Кто-то что-то напридумал и хочет проверить алгоритмическую/структурную/математическую - идеи.
Обязательна лаконичность.


 
Rouse_ ©   (2014-11-21 20:59) [10]

А, понял, на исходниках мы, вместе с Женькой (Jack129) однажды открыли вот такой закуток:
http://forum.sources.ru/index.php?showforum=186
Где люди деляться своими болячками.

В итоге он вырос вот в такой раздел: http://forum.sources.ru/index.php?showforum=59
На у потом вот в такой: http://drkb.ru/


 
Rouse_ ©   (2014-11-21 21:01) [11]

ЗЫ: правда сейчас все это практически не поддерживается (разве что только новыми модерами) и можно сказать с технической точки зрения - заброшено.
Но когда-то мы действительно очень сильно старались :)


 
Rouse_ ©   (2014-11-21 21:04) [12]

ЗЗЫ: а вообще изначальный двигатель всей этой идеи был Виталий Невзоров.
Но, к сожалению, он погиб :(


 
Jeer ©   (2014-11-21 22:06) [13]

Мы еще живы.
P.S.
Сейчас доделываю тулзу: типа  SAP ( IDT - Information Design Tool ).
В итоге уходим от максимальной цены за BO ( servers ), т.е. вообще обходимся без серверной инсталяции.
Закупается только DashBoards ( тулза создания интерактивных флешек ).
И вот ее цена - просто смешная, не более 500 зеленых за место разработчика.


 
Германн ©   (2014-11-22 00:58) [14]


> Rouse_ ©   (21.11.14 20:59) [10]
>
> А, понял, на исходниках мы, вместе с Женькой (Jack129) однажды
> открыли вот такой закуток:
> http://forum.sources.ru/index.php?showforum=186
> Где люди деляться своими болячками.
>
> В итоге он вырос вот в такой раздел: http://forum.sources.
> ru/index.php?showforum=59
> На у потом вот в такой: http://drkb.ru/

Эко ты вспомнил. Так тогда времена были другие. И искать в drkb было проще чем в И-нете плюс тогда ещё АА не сказал про 90% :) А тогда в drkb сыпалось именно столько процентов.
P.S. Но даже если бы Vit не погиб тогда, сомневаюсь что этот проект сегодня бы был жив так, как этого хотелось тогда.


 
Endy   (2014-11-26 13:43) [15]


> Конечно можно, только код не верный


Чем же? Делает то что мне требуется.


 
junglecat ©   (2014-11-26 13:45) [16]

почему >191, а не 127?


 
Endy   (2014-11-26 15:16) [17]

Ну так начиная с кириллицы, с буквы "А", всё так. Вот возможно пригодится "или 60 или 62" добавить к этому...


 
Ega23 ©   (2014-11-26 21:54) [18]


> Ну так начиная с кириллицы, с буквы "А", всё так.


У тебя неправильное понимание utf8.


 
KilkennyCat ©   (2014-11-29 20:41) [19]

А я и не знал, что он погиб. Жаль.



Страницы: 1 вся ветка

Текущий архив: 2016.07.31;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.005 c
1-1338923058
POP
2012-06-05 23:04
2016.07.31
Жесткий баг с MainMenu и Toolbar


2-1416531715
Endy
2014-11-21 04:01
2016.07.31
Просто оставлю здесь. Кодировать символы Юникод для JS-скриптов.


2-1417613185
Jacksotnik
2014-12-03 16:26
2016.07.31
Вопрос по TWebBrowser


2-1417432894
AlexDn
2014-12-01 14:21
2016.07.31
Убрать фокус