ログイン
検索
メインメニュー
フォーラム一覧   -   トピック一覧
   astah*の使い方
     タグについて(タグ付値)
投稿するにはまず登録を

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
ゲスト
投稿日時: 2007-11-2 19:46
Re: タグについて(タグ付値)
ゲストの「syuuhei」さんからの投稿です。
---

お世話になります。
問題ですが、解決しました。
本当にご迷惑をおかけして、すいません。
問題は、単純なミスでした。
ループはきちんとしていました。
judeのファイルには、クラスがいくつか書かれていました。
最後にファイルに書かれるクラスの定義が空で、それが上書きされていただけのようです。
単純なミスで、お手を煩わせていまい、申し訳ありませんでした。
前回同様、親切な対応でUMLの記述ツールでjudeを選んで本当に良かったです。
これからも使用していく予定ですので、よろしくお願いします。
zhouyi
投稿日時: 2007-11-2 19:11
開発者
登録日: 2006-5-9
居住地: 福井
投稿: 48
Re: タグについて(タグ付値)
こんばんは、zhouyiです。

不可解な謎を解くのは、プログラミングの魅力です。
一緒に頑張りましょう!

>>printlnでは出力できるのに、なぜなんでしょうか?
printlnで出力できるということは、IOperation.getDefinition()が正しく動作していると思いますが、
やはりファイルストリームの扱いに問題があるかな!

ファイルストリームを使ったソースコードを教えて頂けないでしょうか?

以上、よろしくお願い致します。

ゲスト
投稿日時: 2007-11-1 15:58
Re: タグについて(タグ付値)
ゲストの「syuuhei」さんからの投稿です。
---

お世話になります。
ご返答いただいたコードで試してみました。
以下部分の、iはローカル変数として重複してしまいますのでkに変えて実行してみましたが、hello.javaには書き込まれませんでした。

for (int i = 0; i < operations.length; i++)
{
bw.write(operations[i].getDefinition());
}

上記ループに関する事は、当方もいくつか試しました。
printlnでは出力できるのに、なぜなんでしょうか?
申し訳ないのですが、検討がつきません。
プログラム的欠陥かもしれませんが、APIの使用で問題があるのかと考えたため、投稿させてもらった次第です。
よろしくお願いします。
zhouyi
投稿日時: 2007-10-31 20:02
開発者
登録日: 2006-5-9
居住地: 福井
投稿: 48
Re: タグについて(タグ付値)
ソースコード、ありがとうございます。

for (int i = 0; i < operations.length; i++)
{
:
try
{
FileOutputStream fos = new FileOutputStream("hello.java");
 OutputStreamWriter osw = new OutputStreamWriter(fos , "MS932");
 BufferedWriter bw = new BufferedWriter(osw);
bw.write(operations[i].getDefinition());

bw.close();
osw.close();
fos.close();
}
catch (Exception e)
{
e.printStackTrace();
:
}
}

このような感じでしょうか?
それだと、"hello.java"に常にi番目の定義しか書き込まないです。
以下の修正を試して頂けないでしょうか?

try
{
FileOutputStream fos = new FileOutputStream("hello.java");
 OutputStreamWriter osw = new OutputStreamWriter(fos , "MS932");
 BufferedWriter bw = new BufferedWriter(osw);

for (int i = 0; i < operations.length; i++)
{
:
bw.write(operations[i].getDefinition());
:
}

bw.close();
osw.close();
fos.close();
}
catch (Exception e)
{
e.printStackTrace();
:
}

以上、よろしくお願い致します。
ゲスト
投稿日時: 2007-10-31 19:34
Re: タグについて(タグ付値)
ゲストの「syuuhei」さんからの投稿です。
---

ソースコードの目的は、一つのクラスの操作の定義をファイルに出力することです。下記コードの一番下の部分で、操作の定義を出力することはできました。これに、さきほどのコードを加えたのですが、ファイルに出力されません。printlnで出力されているので、同じものをファイルに出力するのは可能なのではないのですか?javaの初歩的な質問かもしれませんが、どうしても改善できません。問題点をご指摘いただけると幸いです。

private static void printOperations(IClass c)
{
IOperation[] operations = c.getOperations();
for (int i = 0; i < operations.length; i++)
{
System.out.print(" " + operations[i].getName() + "(");
// print Parameters
IParameter[] params = operations[i].getParameters();
for (int j = 0; j < params.length; j++)
{
System.out.print(params[j].getName() + ",");
}
// print Return Type
System.out.println(") : " + operations[i].getReturnTypeExpression());
//print 操作の定義
System.out.println("Definition is " + operations[i].getDefinition());
   ←ここにさきほどのコードを加えた
}
}
zhouyi
投稿日時: 2007-10-31 19:20
開発者
登録日: 2006-5-9
居住地: 福井
投稿: 48
Re: タグについて(タグ付値)
御疲れ様です。

具体的にどのような不具合が起きたかを教えて
頂けないでしょうか?

すべての操作の定義を"hello.java"に出力することは目的ではないでしょうか、
と憶測しておりますが、そうでしょうか?

ソースコードをもっと詳細に掲載して頂ければ、
より分析しやすくなりますが、よろしいでしょうか?

以上、よろしくお願い致します。
ゲスト
投稿日時: 2007-10-30 15:14
Re: タグについて(タグ付値)
ゲストの「syuuhei」さんからの投稿です。
---

前回はお世話になりました。
おかげで、やりたいことが順調に進みました。

そして、また聞きたいことがあります。
よろしくお願いします。
前回、回答いただいた下記の、操作の定義の出力についてです。

private void showDefinition(INamedElement element) {
System.out.println("Definition is " + element.getDefinition());
}

これをファイル(hello.java)にアウトプットしたいと考えました。
それで、下記のように書いたのですが駄目でした。
どこが悪いかご指摘いただけると幸いです。
よろしくお願いします。

try
{
FileOutputStream fos = new FileOutputStream("hello.java");
 OutputStreamWriter osw = new OutputStreamWriter(fos , "MS932");
 BufferedWriter bw = new BufferedWriter(osw);
bw.write(operations[i].getDefinition());

bw.close();
osw.close();
fos.close();
}
catch (Exception e)
{
e.printStackTrace();
}
ゲスト
投稿日時: 2007-9-18 17:06
Re: タグについて(タグ付値)
ゲストの「syuuhei」さんからの投稿です。
---

ご教授、ありがとうございます。
しばらく、judeを利用させていただく予定です。
また何かありましたら、よろしくお願いします。
zhouyi
投稿日時: 2007-9-18 14:08
開発者
登録日: 2006-5-9
居住地: 福井
投稿: 48
Re: タグについて(タグ付値)
こんにちは、zhouyiです。

showCommentは、クラスの特定のタグ付き値(TaggedValue)を取得するメソッドです。

タグ付き値(TaggedValue)は、UMLの概念で、様々なモデル要素(クラスだけではなく)に持たれています。
JUDEでは、各モデル要素の拡張属性として、使って頂ければと思います。

例えば、クラスの作者や見積もりをクラスのタグ付き値で補足できます。

タグ=作成者、値=zhouyi
タグ=見積もり、値=10 days
など。

今後もよろしくお願い致します。
ゲスト
投稿日時: 2007-9-14 18:19
Re: タグについて(タグ付値)
ゲストの「syuuhei」さんからの投稿です。
---

私が表現と言葉を間違えていました。
本当に申し訳ありませんでした。
問題は解決しました。
本当にありがとうございます。

それと、showCommentでご教授いただいていたものは、クラス図の何を表示するものだったのでしょうか。
今後もjudeを使わせていただく予定ですので、参考までにご教授していただけると幸いです。
よろしくお願いします。
(1) 2 3 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を