HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2020
1106
nowty現在位置のフォルダ名を取得する方法2解決


nowty

リンク

2020/11/6(Fri) 09:49:01|NO.91741

数年ぶりかに掲示板を利用させていただきます.

現在のフォルダをdir_curで取得して,最後のフォルダ名のみを
取得する方法を模索しております.過去ログのsplitの例です.

a = dir_cur // 現在のパス ex. C:\dir1\dir2\dir3 "dir3"を取得したい
split a,"\\",b1,b2,b3
b3 = "dir3"

この方法では,予めフォルダ数=3が必要なのですが,
フォルダ数がわからない場合でもできないかと考えています.

別の方法では,

x=dir_cur // C:\dir1\dir2\dir3
chdir "\.."
y=dir_cur // C:\dir1\dir2\

xとyの文字の差分でdir3が取得できそうな法もあるかと思い,
strtrimでパスを入れるとエラーになってしまいました.

単純な方法があるような気がするのですが,
アドバイス頂ければ幸いです.



この記事に返信する


あらや

リンク

2020/11/6(Fri) 10:05:53|NO.91742

getpathで可能です。

通常はファイルのパスに対して使う関数ですが、
ディレクトリのパスに使うと最後のディレクトリ名だけ取り出せます。

a = dir_cur; b = getpath( a, 8 ); mes b;



nowty

リンク

2020/11/6(Fri) 14:53:21|NO.91748

あらやさん
すぐのご回答いただきありがとうございます.
ご回答の内容で解決しました.

こんな簡単な方法で対応できてたとは感動です.

10年前とかの昔は,文字数と1文字づつループさせたりと
やって自分が恥ずかし限りです.
getpath 8が”ディレクトリ情報除く”って覚えてたので,
試したこともなっかです.

本当にありがとうございました.



ONION software Copyright 1997-2023(c) All rights reserved.