■スレッドリストへ戻る■ 全部 1- 最新50
MonaUtils
- 1 :名無しさん :2001/03/07(水) 00:07
- 誰もが書いて、なおかつ仕様がそれほど異ならない
共通の関数の仕様・実装をageましょう。リクエストもOK。
- 2 :1 :2001/03/07(水) 00:14
- というわけでアプリ・大物クラスは無理ですが、
小物関数・クラスの作成程度なら協力しますよ。
- 3 :turbotypeD@monazilla.org(w :2001/03/07(水) 18:15
- がんばってください。要望出すかも?よいでしょうか。
- 4 :Dax :2001/03/07(水) 22:17
- んじゃ ExtractFilePathや ExtractFileNameのURL版がほしいですね。S := DosPathToUnixPath(ExtractFilePath(UnixPathToDosPath(URL))でもいいのかな、
- 5 :1 :2001/03/07(水) 23:06
- >4 こんなもんでしょうか
uses SysUtils;
function ExtractUrlPath(const FileName: string): string;
var
I: Integer;
begin
I := LastDelimiter('/:', FileName);
Result := Copy(FileName, 1, I);
end;function ExtractUrlName(const FileName: string): string;
var
I: Integer;
begin
I := LastDelimiter('/:', FileName);
Result := Copy(FileName, I + 1, MaxInt);
end;
- 6 :1 :2001/03/07(水) 23:49
- つーか、ユニット化しないと意味ないですね...
http://www.geocities.co.jp/SiliconValley-Oakland/9028/src/MonaUtils.zip簡単なUnitTestも付けました。
テストコードを読めば各関数の使い方がわかるはずです。
- 7 :名無しさん :2001/03/08(木) 08:27
- Good!!
こりゃいい、どんどんつくってくれ!
- 8 :turbotypeD@monazilla.org(w :2001/03/08(木) 16:57
- スンマソン、さっそくお頼みしたいでやんす。テキストファイルのIO処理で。//ファイルに文字列を書き込む
procedure SaveToFileFromString(const FileName, Str: String);
var
F: TextFile;
begin
if DirectoryExists(ExtractFileDir(FileName))=False then
ForceDirectories(ExtractFileDir(FileName));
{ウエ(´Д`) フォルダが存在しない場合作成する}
try
AssignFile(F, FileName);
Rewrite(F);
Write(F, Str);
finally
CloseFile(F);
end;
end;
この関数はばっちりなんだけど。//ファイルから文字列を読み込む
function LoadFromFileToString(const FileName: String): String;
var
SL: TStringList;
begin
Result := '';
if FileExists( FileName ) then
begin
SL := TStringList.Create;
try
SL.LoadFromFile(FileName);
Result := SL.Text;
finally
SL.Free;
end;
end; //if FileExists
end;
こっちがStringListつかっていてへちょいです。
へちょいだけなら別によいのですが
CRLFの改行コードが自動的にWinになってしまうので
困っているのです.このLoadFromFileToStringも
AssignFileなどで実装してもらえないでしょうか。
(CRLFは元のままResultしてくれるようなヤツでお願いしたいっす。)
- 9 :541@2chスレ :2001/03/08(木) 19:06
- Math.pasに依存しないMax,Min追加版
http://www.geocities.co.jp/SiliconValley-Oakland/9028/src/MonaUtils20010308.zip
- 10 :書いてみた :2001/03/08(木) 20:12
- // なければURLの末尾に'/'を追加
function AddSlashToUrl(Url: String): String;
// あればURLの末尾の'/'を削除
function DeleteSlashFromUrl(Url: String): String;function AddSlashToUrl(Url: String): String;
begin
Result := Url
if (Length(Result) > 0) and (Result[Length(Result)] <> '/') then
Result := Result + '/';
end;procedure testAddSlashToUrl;
procedure mycheck(s, s2: String);
begin
Check(s, AddSlashToUrl(s2));
end;
begin
mycheck(
'http://www.yahoo.co.jp/',
'http://www.yahoo.co.jp' );
mycheck(
'http://www.yahoo.co.jp/',
'http://www.yahoo.co.jp/' );
end;function DeleteSlashFromUrl(Url: String): String;
begin
Result := Url
if (Length(Result) > 0) and (Result[Length(Result)] = '/') then
SetLength(Result, Length(Result)+1);
end;procedure testDelSlashToUrl;
procedure mycheck(s, s2: String);
begin
Check(s, DelSlashToUrl(s2));
end;
begin
mycheck(
'http://www.yahoo.co.jp',
'http://www.yahoo.co.jp/' );
mycheck(
'http://www.yahoo.co.jp',
'http://www.yahoo.co.jp' );
end;
- 11 :名無しさん :2001/03/08(木) 21:29
- ソースの管理が難しいなー。
MonaUtils.zip を更新していっていいのかな?
- 12 :1 :2001/03/09(金) 00:30
- とりあえずこのスレのローカルルールを決めてみました。
私が定期的にメンテして整合性をとります。
管理が大変になってきたらまたそのとき考えます。ただコードを書いてメンテするのも退屈なので
不特定多数によるXPのUnitTestがどれくらい
効果をもつのか実験をしてみたいと思います。まあ考え方はぜんぜん難しくないのでMonaTest.pas, MonaUtils.pasを
10分くらい眺めていればすぐに理解できるはずです。UnitTestを知らない人は以下のURLを参照してみてください。
http://member.nifty.ne.jp/masarl/article/xp-tutorial.html
http://member.nifty.ne.jp/masarl/article/testing-framework.html
http://objectclub.esm.co.jp/eXtremeProgramming/
- 13 :1 :2001/03/09(金) 00:37
- ■MonaUtils利用者向けローカルルール
定期的かつ頻繁にtestMonaUtilsを実行する。
リクエストは説明+テストの形式で行う。
特に、仕様がはっきりしている場合テストコードは!!必須!!。
バグ報告・仕様変更要求は追加のテストコードの形で報告する。■MonaUtils開発者向けローカルルール
ソースのアップは以下の方法で行う
(なるべく上の方のやり方を推奨)。
・MonaUtils.zip上書き
・MonaUtils+日付.zip
・ソースをスレに書き込む
・別モジュールで提供# アーカイブの内容は修正したファイルのみでよい
# ファイル形式はzipかlzhテストコードを!!必ず!!書く。
バグ修正前に、バグを再現させるテストを追加・実行する。
余裕があればコメントも書く
(関数名+テスト内容だけで使い方が判るのがベスト)。インターフェース部分の修正・削除は原則禁止。
事前に修正・削除要求をだすこと。
(24時間以内ならOK??)
- 14 :turbotypeD :2001/03/09(金) 00:43
- >>10
URLに2バイト文字がないからよさそうだけど
"/"って文字自体が2バイト文字と重ならないのかどうかはしらないけれどD5のVCL
IncludeTrailingBackslash
ExcludeTrailingBackslash
のソースを参考にしたほうがいいかもよ。//ファイル名の末尾に'\'を追加する関数
function IncludeTrailingBackslash(const S: string): string;
begin
Result := S;
if not IsPathDelimiter(Result, Length(Result)) then Result := Result + '\';
end;//ファイル名の末尾から'\'を取り除く関数
function ExcludeTrailingBackslash(const S: string): string;
begin
Result := S;
if IsPathDelimiter(Result, Length(Result)) then
SetLength(Result, Length(Result)-1);
end;この手のバグはなかなかやっかい.
しかもわかりにくい、気が付きにくい。
FDelphiサイトのPutYenMarkという関数もバグありだし
- 15 :turbotypeD :2001/03/09(金) 00:46
- >>10
URLに2バイト文字というのは聞いた事がない
から大丈夫なのかもしれないけど・
将来的にはまずいよな。
"/"って文字自体が2バイト文字と重ならないのかどうかはしらないけれどD5のVCL
IncludeTrailingBackslash
ExcludeTrailingBackslash
のソースを参考にしたほうがいいかもよ。//ファイル名の末尾に'\'を追加する関数
function IncludeTrailingBackslash(const S: string): string;
begin
Result := S;
if not IsPathDelimiter(Result, Length(Result)) then Result := Result + '\';
end;//ファイル名の末尾から'\'を取り除く関数
function ExcludeTrailingBackslash(const S: string): string;
begin
Result := S;
if IsPathDelimiter(Result, Length(Result)) then
SetLength(Result, Length(Result)-1);
end;この手のバグはなかなかやっかい.
しかもわかりにくい、気が付きにくい。
FDelphiサイトのPutYenMarkという関数もバグありだし
- 16 :名無しさん :2001/03/09(金) 01:06
- >14-15(藁
このテの話を何度もするのはウザいので
危険な漢字集をキボーン。
とりあえず俺が知ってるのはこれだけ
'表'[2] = '\'
- 17 :turbotypeD :2001/03/09(金) 01:08
- ニジウカキコごめんね。
- 18 :Dax :2001/03/09(金) 08:49
- ByteType関数で判断するのがいいのかな?
- 19 :turbotypeD@monazilla.org(w :2001/03/09(金) 11:53
- //文字列の最後が'/'or'\'ならそれを取り除く
function RemoveSlashMark(const S: TFileName): TFileName;
begin
Result := S;
if Length(Result) = LastDelimiter('\/', Result) then
SetLength(Result, Length(Result)-1);
end;//文字列の最後が'/'じゃないなら追加
//文字列の最後が'\'なら'/'に置き換え
function PutSlashMark(const S: TFileName): TFileName;
begin
Result := RemoveSlashMark(S);
Result := Result + '/';
end;
こんなんを作ッたことがある。TFileName=Stringね。LastDelimiterの引数を'/'だけに変えたら望みどおりかも。
確認したけどLastDelimiterはMBCS対応.
VCLのLastDelimiterソスではDax氏のいうとおりByteType関数
http://homepage2.nifty.com/boheme/delphi/tips/tec0710.htm
使ってるよ。
- 20 :turbotypeD@monazilla.org(w :2001/03/09(金) 12:06
- >>8
の件も気が向いたらどなたか考えてくだされ
- 21 :1 :2001/03/10(土) 17:25
- >1-20までの要望・コードを取り込みました
http://www.geocities.co.jp/SiliconValley-Oakland/9028/src/MonaUtils.zipHistory2001.03 10 EMonaError, MonaError作成
2001.03.10 IncludeTrailingSlash作成
2001.03.10 ExcludeTrailingSlash作成
2001.03 10 IsUrlDelimiter作成
2001.03 10 FindFile作成
2001.03.10 LoadStringFromFile作成
2001.03.10 SaveStringToFile作成
- 22 :turbotypeD :2001/03/10(土) 19:57
- >>21
グレ〜〜ト!d(・∀・)
- 23 :turbotypeD :2001/03/10(土) 21:02
- BlockRead/BlockWriteなんてキーワードどこで知ったの?
ありがと。
- 24 :ふみもたたけし :2001/03/11(日) 16:30
- 簡易プロファイラ+簡易HTMLパーサ+bbstable.html解析サンプルを書いてみた
http://www.geocities.co.jp/SiliconValley-Oakland/9028/src/MonaUtils20010311.zipHistory
2001.03.11 MonaHtmlParser作成
2001.03.11 MonaProfiler作成>BlockRead/BlockWriteなんてキーワードどこで知ったの?
これはTurbo Pascal時代からある手続き。
今はWin32API使うからほとんど使われないけど。
- 25 :名無しさん :2001/03/11(日) 16:54
- すごいデスクトップだ、、>>24
- 26 :ふみもたたけし :2001/03/11(日) 20:59
- ちょっと修正
>>24
この前貼ったデスクトップ画像の話?
普段は1600x1200x2で使ってるのでスペースがあまりまくり。
もっと効率的なスペースの埋め方はないものか...
- 27 :1 :2001/03/11(日) 23:38
- >>BlockRead/BlockWriteなんてキーワードどこで知ったの?
>これはTurbo Pascal時代からある手続き。
>今はWin32API使うからほとんど使われないけど。
先頭でAssignが使われていたのでBlockReadを使ってみました。
こっちのほうが移植性が高まるかも(何への??)。お題が出ないようなので
ttp://... -> <A HREF=http://>ttp://...</A>
の変換ルーチンでも書いてみようかな。
- 28 :turbo_type_D@モナブロラ :2001/03/12(月) 08:37
- >>27
キコナビ厨房ソースのページに
>・文字列にURL(http://xxx)があったら、<a href="http://xxx">http://xxx</a>にしてくれるメソッド(高速に)。
とあるのでそっちをいつか見たいと思ってた。参考にしてみたらどうかな。
- 29 :名無しさん :2001/03/12(月) 10:20
- .SaveStringToFile関数が D4だとエラーになる、
内部で使ってる ForceDirectoriesが D4は手続きなのに、
D5では boolean を返す関数になってる、
- 30 :名無しさん :2001/03/12(月) 10:46
- こう修正すりゃいいかな?if (path <> '') and not DirectoryExists(path) then
{$IFDEF VER130}
if ForceDirectories(path) then
MonaError('ディレクトリ%sが作れません。', [path]);
{ウエ(´Д`) フォルダが存在しない場合作成する}
{$ELSE}
try
ForceDirectories(path);
except
MonaError('ディレクトリ%sが作れません。', [path]);
end;
{$ENDIF}
- 31 :1 :2001/03/12(月) 22:41
- 今日は余裕がないのでレスフィルタクラスのインターフェースのみtype
TMonaResFilter = class(TObject)
protected
function Filter(res: String): String; virtual;
public
// フィルタを多重化できるようにする
property Next: TMonaResFilter read write;
property Prev: TMonaResFilter read write;
function Execute(s: String): String;
end;
// スペース表示フィルタ
TMonaResFilter_Space = class(TObject)
protected
procedure Filter(res: String): String; override;
end;
// オマエモナー強調フィルタ
TMonaResFilter_Omaemona = class(TObject)
protected
procedure Filter(res: String): String; override;
end;
// ttp://xxx -> <A HREF=http://xxx>xxx</A>変換フィルタ
TMonaResFilter_ttp = class(TObject); // todo:実装する
procedure TMonaResFilter_Space.Execute(res: String): String;
begin // todo:連続する一個のスペースは変換しないようにする。タブも変換する
Result := StringReplace(res, ' ', ' ', [rfReplaceAll]);
end;procedure TMonaResFilter_Omaemona.Execute(res: String): String;
begin
Result := StringReplace(res, 'オマエモナ-', '<B>オマエモナー</B>', [rfReplaceAll]);
end;
- 32 :1 :2001/03/12(月) 22:48
- 間違いだらけ...
でも意図は伝わりそうだからいいか。これ以外にも大文字->小文字強制変換、
AA縮小・削除フィルタなんてのも考えられますね。
他にアイデアがあったらageて下さい。
- 33 :ヒロユキ@ギコナビ :2001/03/13(火) 00:40
- ADSL入ったよ。
こんな画像や、あんな動画ばかり見ていて、ギコナビ忘れてた(藁>>28
ギコナビは実装してないです。
途中までやって、倒れました。
文字列処理って面倒だよね。あと、高速回線になって初めて気づいたんだけど、
ギコナビって、スレリスト取得後すぐに、今のリストと
比較して、イロイロ処理しているんだけど、その処理が結構
遅い上に他のスレッド止めているんで、凄く気になりました。
こういう部分は、後から見つかると大変なので、注意したほうがいいかも。
- 34 :turbotypeD@monazilla.org(w :2001/03/14(水) 10:23
- >>こんな画像や、あんな動画ばかり見ていて、ギコナビ忘れてた(藁
ヾ(・w・;)ォィォィ
ビデオの方がいいと思うなあ.ちょっと小耳にはさんだんだけど(・ε・)3ゞ
PS2のおかげでエロDVD卸問屋が前年比800%の成長だったってさ。
- 35 :名無しさん :2001/03/14(水) 16:45
- ExtractHostNameきぼぉん
- 36 :1 :2001/03/14(水) 19:37
- 仕様がわかりません。
どこから何をどういった形式で
取り出すのでしょうか?
- 37 :ヒロユキ@ギコナビ :2001/03/14(水) 23:58
- >>35
>ExtractHostNameきぼぉん
http://monagiko/mona/giko
を
http, monagiko, mona, giko
に分解ならhttpcliのソースにあったような気がする。
参考になるかも。
- 38 :Dax :2001/03/15(木) 08:22
- >>35
HttpApp.ExtractHTTPFieldsでもできるかも。
- 39 :turbotypeD@monazilla.org(w :2001/03/15(木) 10:13
- オレは自分で作成したWordDecomposeってのを使ってる。
汎用文字列分解関数だよ。WordCount(':/'{区切り文字},
'http://monagiko/mona/giko', [区切り方法を指定する適当なパラメタ])
で4という数字がもどってきて
WordGet(':/', 1, 'http://monagiko/mona/giko', []);
でIndex1番目のmonagikoという文字列が返るようにしている。
モナプロラのソースに付属してるよ。
- 40 :turbotypeD@monazilla.org(w :2001/03/15(木) 13:19
- XPの紹介があったので、こんなのを見つけました。新ソフトウエア開発手法「エクストリーム・プログラミング(XP)」のユーザー会が発足
http://nsw.nikkeibp.co.jp/nsw/newsshow.asp?ID=920参加しとく?(藁
- 41 :Dax :2001/03/18(日) 22:19
- XPって本当にやってる企業あるのかなー?
会議でおやつはマンセー。#だって眠いもん。
- 42 :Dax :2001/03/18(日) 22:20
- 誤)マンセー
正)賛成
ぅっょ〜。
- 43 :turbotypeD :2001/03/19(月) 00:11
- 実は今日「XPエクストリームプログラミング入門」買っちゃったよ。
会社では全く役に立たないけどね。仕事してないし。
さーて明日も遊ぶか!(藁ああ、転職せねば、鬱々
- 44 :1 :2001/03/19(月) 01:19
- すんません。忙しくてアップデートできせん。火曜日に更新予定。>「XPエクストリームプログラミング入門」
これはずれでした。読みづらいし(具体的・技術的な)内容薄いし。
上のURLや「リファクタリング」のほうがより具体的で参考になりますよ。今はリファクタリング+ユニットテストを実践中(monazilla以外でね)。
これだけでもかなり効果あり。
ペアプログラミングもたまに成り行き上やることあるけど、
確かに効果があがります。お互いに知識を補完しあって良い感じです。
気の合う人とでないと疲れちゃいますけどね。
- 45 :Dax :2001/03/22(木) 23:01
- ペアプログラミングってはじめて聞いたときは衝撃的だったけど
確かに効果ありそうね、プログラミングに限らず
ネットサーフィンとか議事録作成、分析も設計もペアでやればいろいろ吸収できそう??
- 46 :Dax :2001/03/30(金) 09:50
- ベースURLとそのベースURLに対する相対パスを渡すと
それらをマージしてURLをつくる関数がほしいなぁ〜
例)
hoge('http://www.xxx.aaa/data/test/', '../../index.html')
結果= http://www.xxx.aaa/index.html
- 47 :turbotypeD@monazilla.org(w :2001/03/30(金) 13:49
- 年度末連続カキコ。
>>46
一応もっているというか、自作の文字列処理ユニットが絡んでいるから
ややこしいけど、いる?
どこかのアプ板に掲載しておきましょうか?
エラー処理などはおざなりだけど。
hoge('http://www.xxx.aaa/data/test/', '../../../../../index.html')
こんな処理されても挙動がどうなる事やら。
- 48 :名無しさん :2001/03/30(金) 22:33
- ここにコードがある。
http://www.sakaki.keiaikai.or.jp/convroom/webconv.exe/read?No=11629&Response_Root=11621"http://www.2ch.net/../../index.htm"
は当然例外を生成すべき。
- 49 :Dax :2001/03/31(土) 08:31
- おお!あるじゃん!
サンキスト(登録商標)!
- 50 :ヒロユキ@ギコナビ :2001/04/05(木) 22:43
- ここにコード載せていいのかな?
URL文字列 → <A HREF〜変換メソッドです。
まだ、ギコナビにも組み込んでいない(今出来たばかり)ので、
バグがあると思います。
いい加減なテストでは動きました。function TForm1.AddHRefTag(s: string): string;
const
NORMAL_CHAR: string = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789:/.%?=-_';
var
url: string;
i: Integer;
idx: Integer;
begin
Result := ''; while True do begin
idx := AnsiPos('http://', s); if idx = 0 then begin
//リンクが無いーよ。
Result := Result + s;
Break;
end; Result := Result + Copy(s, 0, idx - 1); s := Copy(s, idx, length(s)); for i := 0 to Length(s) do begin idx := AnsiPos(s[i + 1], NORMAL_CHAR); if (idx = 0) or (i = (Length(s))) then begin
//URLじゃない文字発見!とか、文字がなくなった。
url := Copy(s, 0, i); Result := Result + '<a href="' + url + '" target="_blank">' + url + '</a>';
s := Copy(s, i + 1, Length(s));
Break;
end;
end;
end;
end;
- 51 :ヒロユキ@ギコナビ :2001/04/05(木) 22:43
- インデント消えてるし。
省略されてるし。
鬱だ。
- 52 :Dax :2001/04/05(木) 23:28
- テキストでアプして〜!もしくは TECH-BBS。
テストしてみるよー。
- 53 :ヒロユキ@ギコナビ :2001/04/05(木) 23:46
- アプしたよ。URL文字列 → <A HREF〜変換メソッド
http://www.geocities.co.jp/SiliconValley-Oakland/9028/src/AddHRefTag.txt
- 54 :Dax :2001/04/05(木) 23:51
- さんきすと!(^3^)
- 55 :Dax :2001/04/06(金) 10:47
- http://www.geocities.co.jp/SiliconValley-Oakland/9028/src/MonaUtils20010406.lzh
MonaUtilsにAddHRefTag関数を追加しました。
Kylixでも動くように何カ所か手を加えました。(IFDEF入れました)
- 56 :Dax :2001/04/06(金) 12:51
- >>AddHRefTag
チルダ以降がURLとして認識されないみたい。
NORMAL_CHARに追加すればいいのかな?お!できた、できた。
MonaUtils20010406.lzhも修正しときました。
- 57 :ヒロユキ@ギコナビ :2001/04/07(土) 00:09
- >>56
URLで使用できる文字とか、抜けているのもアルっぽい。
http://www.rfc-editor.org/rfc/rfc2396.txt
↑に書いてあると思うんだけど、読めないや。(いや、、字が小さくて、、)
あと、https://とかftp://とかどうしよう。
- 58 :ふみもたたけし :2001/04/08(日) 16:05
- http://www.geocities.co.jp/SiliconValley-Oakland/9028/src/MonaUtils/Folders.pas.txt
http://www.geocities.co.jp/SiliconValley-Oakland/9028/src/MonaUtils/History.pas.txtmonazilla共通ディレクトリ管理クラスと
2ちゃんねるアクセス履歴管理クラスを作ってみた。
いきなり組み込むのもアレなんでレビューお願いします。
- 59 :Dax :2001/04/08(日) 22:37
- MonaUtils.pas には共通関数だけ入れて
クラスはそれぞれのユニットで提供ってのがよくない?
名付けてモナヂラ・ファンデーション・クラス(MFC)<これは嘘。
- 60 :>57 :2001/04/08(日) 23:17
- >あと、https://とかftp://とかどうしよう。
2ちゃんではあまり見かけないから、あまり必要ないかも。
どっちかっていうと直リンはずしてある
ttp://, htp://, tp://に対応して欲しい。
いっそxxx:// -> http://強制変換がいいかも。
- 61 :Dax :2001/04/08(日) 23:23
- >>60 同意。
ttp:// , www. はサポートしたいね。
- 62 :名無しさん :2001/04/08(日) 23:31
- ここらへんは個別に対応すると無茶苦茶遅くなりそうだから
まず'://'で検索してその前後を検索してけばいいかもしれない。あとバグっぽいの発見
function AddHRefTag(s: string): string;
const
NORMAL_CHAR: string = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789:/.%?=-_~'; <-- '+'が抜けてる
var
url: string;
i: Integer;
idx: Integer;
begin
Result := ''; while True do begin
idx := AnsiPos('http://', s); if idx = 0 then begin
//リンクが無いーよ。
Result := Result + s;
Break;
end; Result := Result + Copy(s, 0, idx - 1); s := Copy(s, idx, length(s)); for i := 0 to Length(s) do begin idx := AnsiPos(s[i + 1], NORMAL_CHAR); <-- s[Length(s)+1]にアクセスする
- 63 :Dax :2001/04/09(月) 19:49
- >>58
アクセス履歴管理クラス使ってみました。
でも Delphi4だとコンパイルエラーだったよ。。悲しい。。(IncludeTrailingBackslash
- 64 :Dax :2001/04/09(月) 21:43
- >>58
環境変数ってWin9xは Autoexec.batに書いてリブートしなきゃ
いけないのかな?いちおそれでうまくいったけど他に方法あんのかな?
- 65 :turbotypeD@monazilla.org(w :2001/04/10(火) 21:46
- IncludeTrailingBackslashのソース。function IncludeTrailingBackslash(const S: string): string;
begin
Result := S;
if not IsPathDelimiter(Result, Length(Result)) then Result := Result + '\';
end;
- 66 :Dax :2001/04/11(水) 17:16
- >>65
ありがと!
GetEnvはやっぱ Kylixに移植しにくい・・・
- 67 :Dax :2001/04/17(火) 15:13
- 条件コンパイル指令間違ってました
{$IFDEF WINDOWS}じゃなくて{$IFDEF MSWINDOWS}でした。
- 68 :Dax :2001/04/27(金) 12:19
- 久しぶりに関数を追加しました。
ほとんどモナプロ〜ラ〜とギコナビからの移植です。
http://www.geocities.co.jp/SiliconValley-Oakland/9028/src/MonaUtils20010427.lzh 2001.04.27 TrimHRefTag作成
2001.04.27 DecodeHtmlEsc作成
2001.04.27 EncodeHtmlEsc作成
2001.04.27 ExtractHostDomain作成
2001.04.27 Get2chDate作成 < GikoNaviより
2001.04.27 ChooseString作成
2001.04.27 ExtractQuotedStr作成
2001.04.27 ExtractUrlLastPath作成
2001.04.27 IsNumeric作成 < GikoNaviより
2001.04.27 IsFloat作成 < GikoNaviより
2001.04.27 Fmt2chToDateTime作成 < Monaplorerより
2001.04.27 AddHRefTagをアップデート < GikoNavi a013より
2001.04.27 StrCount1作成 < Monaplorerより
2001.04.27 BackAnsiPos作成 < Monaplorerより
- 69 :委員長 :2001/06/18(月) 11:05
- MonaUtils 使わせて貰ってます。
お陰で随分と楽チン♪。
わざわざ説明するまでもないと思うけど、BCB5でMonaUtilsを使う方法を書い
ときます。
BCB5 で開発している人がいるのかどーかは知らんけど。 C:\Mona にMonaUtilsを解凍したとする。
1.コマンドプロンプトから、DCC32 -JPHNV C:\Mona\MonaUtils.pas を実行
2.C:\Mona に MonaUtils.hpp MonaUtils.obj MonaTest.hpp MonaTest.obj が
作られるので、開発中のプロジェクトのフォルダにコピペ。(他は無視)
3.プロジェクトにMonaUtils.objを追加。
4.関数を使いたいcppファイルの頭に、#include "MonaUtils.hpp" を追加。これでOK!(のハズ)
- 70 :Dax :2001/07/09(月) 22:34
- ヒロユキ氏作のhttp://にリンクを追加する関数「AddHRefTag」を、
ttp://でもリンクを追加するようにしてみました。
かなり冴えない修正ですが、、
http://www.geocities.co.jp/SiliconValley-Oakland/9028/src/MonaUtils20010709.lzh
- 71 :名無しさん :2001/11/01(木) 08:35
- 最新版落とせねーぞ。(・∀・)ゴラァ!
- 72 :書記さん :2001/11/01(木) 11:04
- すんません、新URLはこっちです。
http://members.jcom.home.ne.jp/monazilla/src/MonaUtils20010709.zipついでに現時点での最新もあげときます。
http://members.jcom.home.ne.jp/monazilla/src/MonaUtils20011101.zip
- 73 :名無しさん :2001/11/06(火) 09:32
- thx!
- 74 :幸運の国 :2002/02/06(水) 23:55
- http://members.jcom.home.ne.jp/monazilla/document/index.html
ここのページのリンクがNotFoundになってるとのことなんで再ウプしてみました。C++でboard一覧を作成するクラスです。
http://www2.ocn.ne.jp/~luckland/sample_code.html
25KB
新着レスの表示
スレッドリストへ戻る 全部 前100 次100 最新50
0ch BBS 2004-10-30